如何选择SQL Server数据库的排序规则
如果我想使用数据库来存储不同组的特殊字符,如何选择使用哪种排序规则?例如,如果我将排序规则设置为克罗地亚语,并且想要使用俄语西里尔字母、日语字符(克罗地亚语特殊字符除外) - 我应该使用哪种排序规则?
谢谢, 伊利亚
What if I want to use database to store different groups of special characters, how do I choose which collation to use? For example, if I set collation to Croatian and want to use Russian cyrillic, japanese characters except croatian special characters - which collation should I use?
Thanks,
Ilija
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这意味着您可以将克罗地亚语、俄语和日语存储在同一列中。
但是,当您想要比较(
WHERE MyColumn = @foo
)或排序(ORDER BY MyColumn
)时,由于排序规则,您将无法得到您所期望的结果。但是,如果需要,您可以使用 COLLATE 子句来更改它。
例如
ORDER BY MyColumn COLLATE Japanese_something
我会选择涵盖大部分数据的最常见选项。 MSDN 有这篇可能有用的文章
That means you can store Croatian, Russian and Japanese in the same column.
But when you want to compare (
WHERE MyColumn = @foo
) or sort (ORDER BY MyColumn
) you'll not get what you expect because of the collation.However, you can use the COLLATE clause to change it if needed.
eg
ORDER BY MyColumn COLLATE Japanese_something
I'd go for your most common option that covers most of your data. MSDN has this maybe useful article