如何选择 sql server 数据库的排序规则?

Posted

技术标签:

【中文标题】如何选择 sql server 数据库的排序规则?【英文标题】:how do I select to collations for sql server database? 【发布时间】:2012-12-03 21:23:48 【问题描述】:

我正在使用许多包含不同语言数据的 sql server 2012 数据库。我一直在阅读这些内容,并发现让 sql server 数据库的排序规则正确是需要仔细考虑的。我不熟悉这样的,真的可以做一些帮助。让我概述一下,哪个数据库中有哪些语言:

数据库 1 - 俄罗斯数据 数据库 2 - 波兰语和英语数据 数据库 3 - 吉尔吉斯斯坦和俄罗斯数据

如何确定每个数据库的排序规则?是否有我可以遵循的指南或任何提示?

谢谢。

【问题讨论】:

【参考方案1】:

请参阅此处获取指南(还不是 SQL 2012 的版本,但应该是相同的):

http://msdn.microsoft.com/en-us/library/ms144250.aspx http://msdn.microsoft.com/en-us/library/aa174903(v=sql.80).aspx

此外,无论排序如何,我都建议始终使用 NVARCHAR / NCHAR 列而不是 VARCHAR / CHAR。 (我也会说 NTEXT,但无论如何在 2008 年及以后都已弃用)。

Database 1 - Russian data - `Cyrillic_General_CI_AS`
Database 2 - Polish and English data - `SQL_Polish_Cp1250_CI_AS_KI_WI`
Database 3 - Kyrgyz and Russian data - `Cyrillic_General_CI_AS`

注意:我不是 100% 了解波兰语和英语,比如按字母顺序排序数据;不过其他的我还是很有信心的。

【讨论】:

约翰,非常感谢 - 非常有帮助。我能问一下,你是怎么想出这些排序规则的?已经阅读了这两个链接,但它并没有跳出来告诉我这些信息可能在哪里。 西里尔字母我知道,波兰语我在第一个链接上搜索了那个词。现在正在寻找更有用的东西。 . .与此同时,我发现它显示了排序规则/排序顺序中包含的内容:collation-charts.org/mssql/mssql.0415.1250.Polish_CS_AI.html 恐怕我找不到比上述 MSDN 链接更好的东西了 - 令人惊讶的是,似乎没有任何表格/工具可以针对排序规则列出语言。对不起~

以上是关于如何选择 sql server 数据库的排序规则?的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server的排序规则在啥时候能够进行设置或修改?

SQL server中如何更改排序规则

如何修改SQL Server2005排序规则

SQL Server 为 SQL Server 2008 R2 的英文版,如何将 master 数据库的排序规则改为Chinese_PRC_CL_AS

SQL Server 案例/排序规则问题

在 sql server 2012 中为西班牙语选择了啥排序规则?