Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server:选择排序规则_Sql_Sql Server_Character Encoding_Collation - Fatal编程技术网

SQL Server:选择排序规则

SQL Server:选择排序规则,sql,sql-server,character-encoding,collation,Sql,Sql Server,Character Encoding,Collation,我有一个SQL Server数据库,我正在尝试选择适当的排序规则 现在,默认选项已被选中:SQL拉丁语1\u通用语言CP1\u CI\u AS。然而,这还不够——我需要包括拉丁语(包括Ć、Ć、Ć……)和西里尔语字符(ê、Ж……)。是否有一个字符集可以包含所有这些字符集,或者更好的方法来启用UTF8作为排序规则?您使用的是SQL排序规则。windows排序规则支持UTF-8 也就是说,在您的示例中,SQL\u Latin1\u General\u CP1\u CI\u AS是SQL排序规则,而La

我有一个SQL Server数据库,我正在尝试选择适当的排序规则


现在,默认选项已被选中:SQL拉丁语1\u通用语言CP1\u CI\u AS。然而,这还不够——我需要包括拉丁语(包括Ć、Ć、Ć……)和西里尔语字符(ê、Ж……)。是否有一个字符集可以包含所有这些字符集,或者更好的方法来启用UTF8作为排序规则?

您使用的是SQL排序规则。windows排序规则支持UTF-8

也就是说,在您的示例中,SQL\u Latin1\u General\u CP1\u CI\u AS是SQL排序规则,而Latin1\u General\u 100\u CI\u是可比较的。但如果你看看这些排序规则。还有一些是UTF8的

例如,有拉丁语1_General_100_CI_AS_KS_WS_SC_UTF8

即:

  • 不区分大小写
  • 重音敏感
  • 假名敏感
  • 宽度敏感
  • 补充字符支持
  • 具有UTF8支持
UTF8不存在于仅SQL排序规则中。根据您的实际服务器实例版本,可能也不可用

Msdn链接:


SQL Server 2019支持UTF-8。否则,我建议使用
nvarchar
@Larnu我使用的是SQL Server 2019,那么如何设置UTF-8呢?它不是排序规则下拉菜单中的选项之一。
SELECT*FROM sys.fn_helpcollations(),其中的名称类似于“%UTF8%”不返回任何行?如果是这样,则说明您没有使用SQL Server 2019,或者没有使用最新兼容模式下的数据库。