Azure Synapse Analytics での Synapse SQL のデータベース照合順序のサポート

照合順序を使用して、文字ベースのデータ型に対するロケール、コード ページ、並べ替え順序、および大文字と小文字の区別の規則を指定します。 選択されると、照合順序情報を必要とするすべての列と式が、選択された照合順序をデータベース設定から継承します。 既定の継承は、文字ベースのデータ型に対する別の照合順序を明示的に宣言することによって上書きできます。

この記事は、Azure Synapse ワークスペースの専用 SQL プールに適用されます。専用 SQL プール (旧称 SQL DW) の詳細については、「専用 SQL プール (旧称 SQL DW) でサポートされる照合順序の種類」を参照してください。

新しい専用 SQL プール データベースを作成するときに、Azure portal から既定のデータベースの照合順序を変更できます。 この機能により、サポートされる 3800 個のデータベースの照合順序のいずれかを使用して、新しいデータベースをさらに簡単に作成できるようになりました。

CREATE DATABASE ステートメントを使用した作成時には、既定のサーバーレス SQL プール データベースの照合順序を指定できます。

Note

Azure Synapse Analytics では、クエリ テキスト (変数、定数などを含む) は、他の SQL Server オファリングと同様のサーバーレベルの照合順序ではなく、常にデータベースレベルの照合順序を使用して処理されます。

照合順序を変更する

専用 SQL プール データベースの既定の照合順序を変更するには、プロビジョニング エクスペリエンスで [照合順序] フィールドを更新します。 たとえば、既定の照合順序を大文字と小文字が区別されるように変更する場合は、照合順序を SQL_Latin1_General_CP1_CI_AS から SQL_Latin1_General_CP1_CS_AS に変更します。

Note

既存の専用 SQL プール データベースでは照合順序を変更できません。 専用 SQL プール レベルで別の照合順序を使用する必要がある場合は、必要な照合順序を使用して新しい専用 SQL プールを作成します。

サーバーレス SQL プール データベースの既定の照合順序を変更するには、ALTER DATABASE ステートメントを使用します。

照合順序のサポート

次の表では、照合順序の種類ごとに、サポートしているサービスを示します。

照合順序の種類 サーバーレス SQL プール 専用 SQL プール - データベースおよび列レベル 専用 SQL プール - 外部テーブル (ネイティブ サポート) 専用 SQL プール - 外部テーブル (Hadoop/Polybase)
UTF-8 以外の照合順序 はい イエス イエス はい
UTF-8 はい はい いいえ 番号
Japanese_Bushu_Kakusu_140_* イエス はい いいえ 番号
Japanese_XJIS_140_* イエス はい いいえ 番号
SQL_EBCDIC1141_CP1_CS_AS 番号 番号 番号 番号
SQL_EBCDIC277_2_CP1_CS_AS 番号 番号 番号 いいえ

現在の照合順序を確認する

データベースの現在の照合順序を確認するには、次の T-SQL スニペットを実行できます。

SELECT DATABASEPROPERTYEX(DB_NAME(), 'Collation') AS Collation;

プロパティのパラメーターとして "Collation" が渡された場合、DatabasePropertyEx 関数から現在データベースで指定されている照合順序が返されます。 詳細については、「DATABASEPROPERTYEX」を参照してください。

サポートされている照合順序を確認する

専用 SQL プールでサポートされている照合順序の一覧をチェックするには:

USE master
GO
SELECT * FROM sys.fn_helpcollations();

データベースから sys.fn_helpcollations 関数を実行しますmaster

専用 SQL プールとサーバーレス SQL プールのベスト プラクティスに関する追加情報については、次の記事を参照してください。