1

SQL_Hungarian_CP1250_CI_AS 表现为区分大小写,尽管排序规则是 CI(不区分大小写)。其根本原因是在 SQL Server 中有 2 个匈牙利语家族的匈牙利语。

select * from sys.objects where name like 'myTablE'

没有收到任何行

select * from sys.objects where name like 'myTablE' COLLATE SQL_Latin1_General_CP1_CI_AS

已选择 1 行

当我使用 Hungarian_Technical_CI_AS 时,我能够看到结果:(SQL 中的第二个匈牙利语家族)

select * from sys.objects where name like 'myTablE' COLLATE Hungarian_Technical_CI_AS

这是一个错误吗?

4

1 回答 1

1

显然,非技术性匈牙利排序规则在查询中的使用是臭名昭著的,而技术排序规则通常是首选。这是因为一些字母被压缩形成只出现在匈牙利字母表中的新字母,例如sz.

我在MSDN 论坛StackOverflow上找到了更多信息。

普遍共识:尽可能使用技术整理。

于 2019-06-20T08:55:01.613 回答