ENCODING バインド・オプション

ENCODING オプションは、プランまたはパッケージ内のすべてのホスト変数の静的ステートメント用のアプリケーション・エンコードを指定します。

コマンド・オプション オプションの値 と併用
ENCODING
  • (ASCII)
  • (EBCDIC)
  • UNICODE 1 )
  • ccsid
注:
  1. ENCODING(UNICODE) 以外の値は、BIND SERVICEコマンドでは無効です。
  2. ENCODING バインド オプションは、ネイティブ SQL プロシージャネイティブ REST サービス、または高度なトリガー のパッケージの REBIND には無効です。

オプションの説明 ENCODING

ENCODING(ASCII)
ASCIIエンコーディングが使用されています。 情報交換用米国標準コード (ASCII) はコード化スキームの 1 つです。 ASCIIは、WindowsなどのIntelベースのシステムや、 Linux® などのUNIXベースのシステムで一般的に使用されています。 詳細については、 ASCII を参照してください。
ENCODING(EBCDIC)
変更の開始SYSTEM EBCDIC CCSID フィールド値で指定されたエンコーディングが使用されます。 EBCDIC CCSID フィールド(SCCSID、MCCSID、GCCSID DECP 値 )を参照してください。 EBCDIC(Extended Binary Coded Decimal Interchange Code)は、 IBM® zSystems™ ( z/OS® )および iSeries (System i)で一般的に使用されているエンコーディング方式です。 詳細は、 EBCDIC を参照してください。変更の終わり
ENDODING(UNICODE)
Unicodeエンコーディングが使用されています。 Unicode は、現在 100,000 を超える文字の固有コード・ポイントを提供するコード化スキームです。 この標準により、システムではプラットフォーム、プログラム、または言語に関係なく、グローバル・データを容易に処理することができます。 詳細は、Unicode を参照してください。
ENCODING( ccsid )
SYSTEM EBCDIC CCSID以外の値。 端末エミュレーターなどのデータ・ソースが、SYSTEM EBCDIC CCSID とは異なる CCSID を使用している場合、このオプションを選択する場合があります。 例えば、1047 の CCSID を使用する端末エミュレーターをユーザーが保有していても、SYSTEM EBCDIC CCSID は 37 です。 この場合、ユーザーが使用するプランまたはパッケージは、ENCODING (1047) を使用してバインドする必要があります。 詳細は、「システムコード化文字集合識別子(CCSID)」 を参照してください。

DB2® version 7 以降でコンパイルされたプランまたはパッケージでは、ASCII、UNICODE、または ccsidccsidは SYSTEM EBCDIC CCSID以外の値)を指定できます。

EBCDICは、 DB2 version 6 以前にコンパイルされたプランまたはパッケージの唯一の有効なオプションです。 そのようなプランまたはパッケージで ccsid を指定する場合、ccsid の値は SYSTEM EBCDIC CCSID フィールドの値と一致していなければなりません。 EBCDIC CCSID フィールド(SCCSID、MCCSID、GCCSID DECP 値 )を参照してください。

ENCODING は、SQL ステートメント DESCRIBE によって戻されるデータの内容にも影響を 与えます。 Db2 指定されたアプリケーションのエンコーディング方式で、列名、ラベル名、またはその両方(要求された場合)を返します。

デフォルト値 ENCODING

デフォルトのパッケージアプリケーションのエンコーディングスキームは、プランアプリケーションのエンコーディングオプションから継承されません。 リモート Db2 for z/OS システムにバインドされたパッケージのデフォルトは、リモートサーバーのデフォルトのアプリケーションエンコードスキームです。 同様に、リモート Db2 for z/OS サーバー上でプランまたはパッケージが実行される場合、指定されたENCODINGオプションは無視されます。 代わりに、リモート・サーバーのコード化スキームが使用されます。

次のステートメントはホスト変数の値を設定し、プランにバインドされるパッケージを必要としません。

SET CURRENT PACKAGE SET = :HV ,
SET :HV = CURRENT PACKAGE SET ,
SET :HV = CURRENT PACKAGE PATH ,
SET CURRENT PACKAGE PATH = :HV

ホスト変数は、アプリケーションが ENCODING (EBCDIC/UNICODE) BIND オプションでバインドされる場合でも、システムのデフォルトのアプリケーション・コード化スキームを使用します。

処理 デフォルトの 値
BIND PLAN インストール時に指定されたシステム・デフォルトの アプリケーション・コード化スキーム
BIND PACKAGE インストール時に指定されたシステム・デフォルトの アプリケーション・コード化スキーム
BIND SERVICE ユニコード
REBIND PLAN 既存の値
REBIND PACKAGE 既存の値

カタログレコード ENCODING

SYSPLAN カタログテーブルまたは SYSPACKAGE カタログテーブルの ENCODING_CCSID 列を参照してください。

値は以下のとおりに設定します。

  • MIXED=NO サブシステムの場合、ENCODING(ASCII) または ENCODING(EBCDIC) を指定すると、コード化スキームの SBCS CCSID はカタログに保管されます。
  • MIXED=YES サブシステムの場合、ENCODING(ASCII) または ENCODING(EBCDIC) を指定すると、コード化スキームの混合 CCSID はカタログに保管されます。
  • ENCODING(UNICODE) を指定すると、混合 CCSID (1208) は MIXED 設定にかかわらず、カタログに保管されます。