我的SQL Server 2008数据库设置为Latin1_General_100_CI_AI排序规则,但是当我使用Management Studio查询数据库时,它仍然是重音敏感的。我错过了什么?
此外,在nvarchar上连接两个表时,我收到以下消息。这些表格也是相同的排序规则。
无法在等于操作的情况下解决“Latin1_General_100_CI_AI”与“Latin1_General_CI_AS”之间的排序规则冲突。
非常感谢任何帮助。
答案 0 :(得分:5)
尝试将其中一个字段转换为其他字段的排序规则:
SELECT *
FROM as_table
JOIN ai_table
ON ai_field = as_field COLLATE Latin1_General_100_CI_AI
或
SELECT *
FROM ai_table
JOIN as_table
ON as_field = ai_field COLLATE Latin1_General_100_CI_AS
请注意,转换字段会使谓词无法与此字段上的索引进行比较。
答案 1 :(得分:1)
一旦您已经在数据库中创建了对象,只需更改排序规则就不会更改现有对象。您可以通过右键单击表并将其编写出来来看到这一点 - 他们会有很多关于varchar字段排序规则的注释。如果您希望更改对象,则需要重新创建它们。