コード ページのアーキテクチャ

照合順序は、SQL Server における文字列の物理的な記憶を制御します。照合順序は、各文字を表すビット パターンや、文字の並べ替えや比較を行う際のルールを指定します。

コンピュータ内では、ON または OFF のいずれかのビットのさまざまなパターンとして文字が表現されます。1 バイトは 8 ビットで構成され、8 ビットの ON、OFF の組み合わせには 256 種類のパターンがあります。したがって、1 文字の格納に 1 バイトを使用するプログラムでは、各ビット パターンに 1 文字を割り当てることにより、最大 256 種類の文字を表すことができます。2 バイトは 16 ビットで構成され、16 ビットの ON、OFF の組み合わせには 65,536 種類の一意なパターンがあります。2 バイトを使用して 1 文字を表すプログラムでは、最大 65,536 文字を表すことができます。

1 バイト コード ページは、1 バイトに含めることができる 256 種類のビット パターンのそれぞれに対応する文字の定義です。コード ページでは、大文字、小文字、数字、記号、および特殊文字 (感嘆符 (!)、アット マーク (@)、シャープ記号 (#)、パーセント (%) など) のビット パターンが定義されます。ドイツ語やスペイン語など、個々のヨーロッパ言語には、独自の 1 バイト コード ページがあります。ラテン アルファベット文字の A から Z までを表すビット パターンはすべてのコード ページで共通ですが、アクセント付き文字を表すビット パターンはコード ページによって異なります。

1 バイト文字セットに、多くの言語で使用されるすべての文字を格納することはできません。一部のアジア言語では、何千もの文字が使用されるので、1 文字につき 2 バイトを使用する必要があります。このような言語用に 2 バイト文字セットが定義され、コード ページも定義されています。

次の表に、SQL Server でサポートされているコード ページを示します。

コード ページ

説明

1258

ベトナム語

1257

バルト語

1256

アラビア語

1255

ヘブライ語

1254

トルコ語

1253

ギリシャ語

1252

ラテン語 - 1 (ANSI)

1251

キリル文字

1250

中央ヨーロッパ言語

950

中国語 (繁体字)

949

韓国語

936

中国語 (簡体字)

932

日本語

874

タイ語

850

多言語 (MS-DOS ラテン語 - 1)

437

MS-DOS 英語 (U.S.)

複数の照合順序で、Unicode 以外のデータに対して同じコード ページを使用することが可能です。たとえば、1251 コード ページは、キリル文字のセットを定義しています。このコード ページは、Cyrillic_General、Ukrainian、Macedonian_FYROM_90 などの複数の照合順序によって使用されます。これらすべての照合順序は同じビット セットを使用して非 Unicode 文字データを表しますが、適用する並べ替え規則と比較規則は若干異なります。これは、照合順序に関連付けられている言語またはアルファベットにおいて、文字の正しい順序に関する辞書の定義に対処できるようにするためです。

関連項目

概念