2

大文字と小文字を区別しないスキーマ オブジェクト名と、SQL Serverで大文字と小文字を区別する比較を混在させる方法はありますか?

データベース内のすべての文字列列は CS (大文字と小文字を区別する) 照合を使用していますが、データベース レベルで CS 照合に切り替えることはできません。これは、クエリで一貫性のないスキーマ オブジェクト名の大文字と小文字を使用するレガシー アプリケーションによって管理されているためです。

たとえば、正常に実行して 0 を返すには、次のクエリが必要です。

select count(*) from PeRsOn where 'A' = 'a'
4

1 に答える 1

4

さらに、リテラルの照合順序を指定できます。これは、インスタンス、データベース、または列レベルで指定されたものの代わりに使用されます。

SELECT count(*) 
FROM PeRsOn 
WHERE 'A' COLLATE Latin1_General_CS_AS = 'a' COLLATE Latin1_General_CS_AS
于 2012-06-26T07:43:29.430 に答える