有没有办法为查询设置模式,以便在查询的其余部分中,我可以仅通过名称引用表而不用模式名称添加它们?
例如,我想做这样的事情:
Use [schemaName]
select * from [tableName]
Run Code Online (Sandbox Code Playgroud)
与此相反:
select * from [schemaName].[tableName]
Run Code Online (Sandbox Code Playgroud) 我有以下Rails迁移工作完美(删除不相关的部分):
create_table :comments do |t|
t.text :body
t.references :post
end
Run Code Online (Sandbox Code Playgroud)
现在我想author在我的comments表中添加一个列(这是用户的用户ID),但我不知道该怎么做(我很想用a编写特定于MySql的语法execute).
我一直在看add_column 这里没有提到references.我实际上找到了TableDefinition#引用,但我不知道如何将它与add_column语句一起使用.
这可能吗?另外,对于MySql,"引用"功能是否真的没有在表之间建立关系?
是否有YAML的架构验证语言?我用谷歌搜索,但找不到任何有用的东西.
XSD格式之类的东西,使用语言本身来描述模式,在我的情况下是最好的选择.
我决定使用log4net作为新web服务项目的记录器.一切都运行正常,但我收到了很多消息,如下面的消息,对于我在我使用的每个log4net标签web.config:
找不到元素'log4net'的架构信息......
以下是我的相关部分web.config:
<configSections>
<section name="log4net"
type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\log.txt" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="100KB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level: %message%newline" />
</layout>
</appender>
<logger name="TIMServerLog">
<level value="DEBUG" />
<appender-ref ref="RollingFileAppender" />
</logger>
</log4net>
Run Code Online (Sandbox Code Playgroud)
解决了:
xml文件.确保.xml用作文件扩展名.AssemblyInfo.cs:[assembly: log4net.Config.XmlConfigurator(ConfigFile = "xmlFile.xml", Watch = true)]
Run Code Online (Sandbox Code Playgroud)
nemo补充道:
只需向任何人发出警告,请遵循此主题中的答案建议.将x4中的log4net配置放在Web服务的根目录下可能存在安全风险,因为默认情况下任何人都可以访问它.如果您的配置包含敏感数据,请注意,您可能希望将其放在何处.
@wcm:我尝试使用单独的文件.我添加了以下行AssemblyInfo.cs
[assembly: …Run Code Online (Sandbox Code Playgroud) 我试图弄清楚如何使用NHibernate配置与映射来更新表模式,而不是删除和重新创建它们.
目前我正在使用NHibernate.Tool.hbm2ddl.SchemaExport带有FluentNHibernate 的obj来为mysql数据库生成数据库模式.虽然我不能说这是一个很大的问题,但每当我调用SchemaExport.Execute数据库时,它都会删除所有表,然后重新创建它们.
如果我可以让它更新现有的表结构,尽可能保留数据,那会更酷.但我真的不想使用商业产品或代码生成器,因为我不喜欢一般的代码生成,而且我不需要这么多,我会考虑支付它.所以希望任何答案都会记住这些警告.
我想从服务器获取架构.我可以获得所有类型的实体,但我无法获得属性.
获得所有类型:
query {
__schema {
queryType {
fields {
name
type {
kind
ofType {
kind
name
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
如何获取类型的属性:
__type(name: "Person") {
kind
name
fields {
name
type {
kind
name
description
}
}
}
Run Code Online (Sandbox Code Playgroud)
如何只在1个请求中获取具有属性的所有类型?或者更好:我如何通过mutators,enums,types获得整个架构......
文档似乎说它引用了模式中的另一个元素,但是如何使用它 - 我从未在我使用过的模式中看到它.
任何人都有任何好的用例或可以进一步解释其使用的东西?
我需要编写一个sql脚本,在我刚创建的数据库中创建一个新数据库和一个新模式.
我该怎么做?我可以以某种方式将当前数据库更改为新数据库吗?或者我可以以某种方式为CREATE SCHEMA指定数据库吗?
我正在使用PostgreSQL 9.0
schema ×10
sql ×3
sql-server ×2
xsd ×2
.net ×1
database ×1
graphql ×1
log4net ×1
logging ×1
migration ×1
nhibernate ×1
orm ×1
postgresql ×1
rake ×1
validation ×1
web-config ×1
web-services ×1
xml ×1
yaml ×1