区分大小写和数据库项目
Posted
技术标签:
【中文标题】区分大小写和数据库项目【英文标题】:Case sensitivity and database projects 【发布时间】:2013-06-20 01:27:16 【问题描述】:我在我们的 SQL Server 2012 数据库中创建了一个名为 [Auth]
的架构。然后也创建了表和触发器。后来得知schema命名标准是小写的,所以应该是[auth]
。我重命名了数据库项目中的架构,以及所有相关的参考资料。但是,架构比较功能不会检测到差异,也不会重命名架构。
这会影响我们的实体框架对象,因为它们应该是'auth'
。
有没有办法让数据库项目把一个案例的变化看成一个变化,并更新数据库?
【问题讨论】:
【参考方案1】:项目设置中有一个名为“Validate Casing on Identifiers”的选项,根据文档应检测大小写差异。但是,只有在项目的数据库设置中选择区分大小写的排序规则时,它似乎才相关。
一旦我选择了 SQL_Latin1_General_CP1_CS_AS,我就能够检测到架构名称的变化,并按预期编写 DROP/CREATE 架构:
【讨论】:
这不是区分大小写的列名更改。你知道怎么做吗? 我也有同样的问题。但是我的字段是西里尔文。我将数据库排序规则更改为SQL_Latin1_Generel_CP1251_CS_AS
,但这对我没有帮助。在我改回SQL_Latin1_Generel_CP1_CS_AS
之后,它就可以工作了。以上是关于区分大小写和数据库项目的主要内容,如果未能解决你的问题,请参考以下文章