COLLSEQ は、英数字および DBCS オペランドを比較するための照合シーケンスを指定します。
| COLLSEQ オプションの構文 |
|---|
|
デフォルト: COLLSEQ(BIN)
省略形は、CS(L)、CS(E)、CS(BIN)、CS(B) です。
COLLSEQ に次のサブオプションを指定できます。
STANDARD-1、STANDARD-2、 または EBCDIC の英字名を持つソースに PROGRAM COLLATING SEQUENCE 文節を使用する場合は、英数字オペランドの比較では COLLSEQ オプションが 無視されます。PROGRAM COLLATING SEQUENCE is NATIVE を指定した場合は、COLLSEQ オプションが適用されます。 それ以外の場合は、PROGRAM COLLATING SEQUENCE 文節で指定された英字名がリテラルで定義されているときに、COLLSEQ オプションによって指定された照合シーケンスが使用されます。このオプションは、この英字名で指定されたユーザー定義のシーケンスによって変更されます。(詳細については、ALPHABET 文節の関連参照をご覧ください。)
PROGRAM COLLATING SEQUENCE 文節は、DBCS 比較には影響しません。
前述のサブオプション NATIVE は推奨できません。NATIVE サブオプションを指定する場合は、COLLSEQ(LOCALE) が前提となります。
次の表に、PROGRAM COLLATING SEQUENCE 文節が指定されていない場合に、比較に使用されるデータの型 (ASCII または EBCDIC) および 有効な COLLSEQ オプションに基づいて、適用できる変換および照合シーケンスをまとめます。このオプションが指定されている場合は、コンパイラー・オプションの指定よりもソースの指定が優先されます。CHAR オプションによって、データが ASCII になるか EBCDIC になるかが決まります。
| 被比較数 | COLLSEQ(BIN) | COLLSEQ(LOCALE) | COLLSEQ(EBCDIC) |
|---|---|---|---|
| 両方とも ASCII | 変換は行われません。比較は 2 進数値 (ASCII) に基づきます。 | 変換は行われません。比較は現行のロケールに基づきます。 | 両方の被比較数が EBCDIC に変換されます。比較は 2 進数値 (EBCDIC) に基づきます。 |
| ASCII と EBCDIC の混在 | EBCDIC の被比較数が ASCII に変換されます。比較は 2 進数値 (ASCII) に基づきます。 | EBCDIC の被比較数が ASCII に変換されます。比較は現行のロケールに基づきます。 | ASCII の被比較数が EBCDIC に変換されます。比較は 2 進数値 (EBCDIC) に基づきます。 |
| 両方とも EBCDIC | 変換は行われません。比較は 2 進数値 (EBCDIC) に基づきます。 | 両方の被比較数が ASCII に変換されます。比較は現行のロケールに基づきます。 | 変換は行われません。比較は 2 進数値 (EBCDIC) に基づきます。 |
関連タスク
照合シーケンスの指定
ロケール付きの照合シーケンスの制御
関連参照
CHAR
ALPHABET 文節