0

您如何确定 SQL 2005 中数据库的排序规则,例如,如果您需要执行不区分大小写的搜索/替换?

4

4 回答 4

1

使用以下 SQL 确定数据库的排序规则:

SELECT DATABASEPROPERTYEX('{database name}', 'Collation') SQLCollation;
于 2008-09-22T08:57:43.537 回答
1

请记住,各个列可以覆盖数据库排序规则:

SELECT TABLE_NAME, COLUMN_NAME, COLLATION_NAME
FROM INFORMATION_SCHEMA.COLUMNS
于 2008-10-01T04:55:20.727 回答
1

如果你想做一个不区分大小写的搜索并且不能依赖数据库的排序规则,你总是可以专门为你感兴趣的查询请求它。例如:

SELECT TOP 1 FName, *
FROM People
WHERE FName LIKE '%mich%' COLLATE Latin1_General_CI_AI

我通常有相反的问题,我想要区分大小写但在数据库的排序规则中没有它,所以我发现自己在查询中使用了很多 Latin1_General_BIN 排序规则。如果你还不知道,你可以这样做:

SELECT 
FROM ::fn_helpcollations()

获取可用排序规则的列表和它们的用途描述。

于 2008-10-02T20:49:14.013 回答
1

选择数据库并运行以下命令。

sp_helpsort
于 2013-05-20T06:02:40.177 回答