web-dev-qa-db-ja.com

SQL Server照合順序の変更の影響

現在SQL Server 2016を使用しており、現在、データベースに設定されている照合順序はSQL_Latin1_General_CP1_CI_ASです。分析サービスの照合順序はSQL_Latin1_General_CP1_CS_ASに設定されています。

ベンダーからの推奨事項は、リレーショナルデータベースと分析サービスの照合順序の両方で大文字と小文字が区別されることです。

リレーショナルデータベースの照合を大文字と小文字を区別するように変更し、分析サービスと一致させることのマイナス面があるかどうかを理解したいと思います。

2
Newbie

インスタンスまたはデータベース、あるいはその両方に照合順序を変更した場合の影響に関する詳細な分析を投稿しました。

インスタンス、データベース、およびすべてのユーザーデータベースのすべての列の照合順序の変更:何が問題になるのでしょうか?

影響を受ける可能性のある領域はかなりあり、特定のデータベースについて話しているのか、それともインスタンスとそのインスタンス上の1つ以上のデータベースについて話しているのかによって大きく異なります。

ただし、そのような変更の影響を尋ねるだけでなく、ベンダーにも尋ねる必要があります。

  1. なぜ彼らはこの勧告をしているのですか?それらにvery特定の理由がない場合は、おそらくそれを行うべきではありません。
  2. 具体的な推奨事項は何ですか?インスタンスの大文字と小文字を区別するためですか、それともこの特定のデータベースだけですか?
  3. ベンダーはオブジェクトを既存のデータベースにインストールしていますか、それとも独自に作成していますか?独自のデータベースを作成する場合、データベースの作成時に照合を設定することで、大文字と小文字を区別することができます。また、既存のデータベースにインストールする場合は、CREATE TABLEステートメントでCOLLATE句を使用するだけで、データベースのデフォルトを上書きできます。データベースのデフォルトの照合を上書きするために、式でCOLLATE句を使用できます。
  4. 新しい、より適切なWindows照合順序ではなく、廃止されたSQL Server照合順序を使用しているのはなぜですか? SQL Server 2008以降を使用している場合は、Latin1_General_100_CS_AS_SCSQL_Latin1_General_CP1_CS_ASと同等に推奨されます。
3
Solomon Rutzky