SQL Server Express 2012 で実行されているデータベースの特定の列について、文字列を比較するときに ss と ß が同じと見なされない照合が必要です。また、ä と ae、ö と oe、ü と ue はそれぞれ異なるものと見なす必要があります。Latin1_General_CI_AS は後者を提供しますが、ss と ß は区別されません。つまり、とWHERE ThatColumn = 'Fass'
の両方が得られます。Fass
Faß
私は単純に BIN/BIN2 に固執しますが、大文字と小文字を区別しない必要があります。他に何も機能しない場合は、Latin1_General_BIN/Latin1_General_BIN2 を使用し、すべてが大文字または小文字であることを自分で確認する必要があります。適切な大文字と小文字を使用してバージョンを取得できるようにする必要があるため、より多くの作業が必要になります。
しかし、私が必要とする照合があれば、私に知らせてください。前もって感謝します!
更新: 要件に関する詳細情報: データベースには、ASCII 文字のみをサポートしていたレガシー システムの個人名が含まれています。つまり、Müller や Faß などの名前は、Mueller および Fass として保存されます。新しいシステムでは、ユーザーはこれらの人の名前を変更する機能を持っています。たとえば、"Mueller" を "Müller" に名前変更します。名前を変更する必要があるエンティティを見つけるには、「Fass」などを含む行を検索する必要があります。しかし、現在のように、クエリは「Faß」も返しますが、これは私が望んでいるものではありません。ユーザーが「fass」を検索して「Fass」を取得できるようにする必要があるため、大文字と小文字を区別しない必要があります。
システムには他にもありますが、ss と ß、ä と ae などを区別する必要があると断言できます。