CURRENT APPLICATION ENCODING SCHEME 特殊レジスター

CURRENT APPLICATION ENCODING SCHEME は、動的ステートメントで使用するコード化スキームを指定します。 これは、データの処理に使用するコード化スキームをアプリケーションが指定できるようにします。 このレジスターは、REXX アプリケーションまたは REXX で書かれたストアード・プロシージャーではサポートされません。

特殊レジスターに含まれる値は CCSID の文字表現です。 値 ASCII、EBCDIC、または UNICODE を使用して特殊レジスターを設定することは できますが、特殊レジスターに保管されるものは、SET CURRENT APPLICATION ENCODING SCHEME ステートメントに使用された値に対応する、数値 CCSID を文字表現したものです。 値 ASCII、EBCDIC、または UNICODE は保管されません。 数値 CCSID 値から ASCII、EBCDIC、または UNICODE の値を得るには 、CCSID_ENCODING スカラー関数を使用することができます。

データ・タイプは CHAR(8) です。 必要な場合、その長さが 8 バイトになるように、 値の右側にブランクが埋め込まれます。

ストアード・プロシージャーおよびユーザー定義関数の場合、CURRENT APPLICATION ENCODING SCHEME 特殊レジスターの初期値は、プロシージャーまたは関数に関連付けられたパッケージの ENCODING バインド・オプションの値、または、コンパイル済み SQL 関数またはネイティブ SQL プロシージャーの CREATE FUNCTION、 ALTER FUNCTION、 CREATE PROCEDURE、または ALTER PROCEDURE のいずれかのステートメントの APPLICATION ENCODING SCHEME オプションによって決まります。 オプションが指定されていない場合、初期値は、インストール・ パネル DSNTIPF の DEFAULT APPLICATION ENCODING SCHEME フィールドの値です。

変更の開始基本トリガーの場合、CURRENT APPLICATION ENCODING SCHEME 特殊レジスターの初期値は Unicode です。 拡張トリガーの場合、CURRENT APPLICATION ENCODING SCHEME 特殊レジスターの初期値は、インストール・パネル DSNTIPF の DEFAULT APPLICATION ENCODING SCHEME フィールドの値です。変更の終わり

現在のアプリケーションエンコーディングスキームの特別なレジスタは、他の特別なレジスタと同様に使用できます
  EXEC SQL VALUES(CURRENT APPLICATION ENCODING SCHEME) INTO :HV1;
  EXEC SQL INSERT INTO T1 VALUES (CURRENT APPLICATION ENCODING SCHEME);
  EXEC SQL SET :HV1 = CURRENT APPLICATION ENCODING SCHEME;
  EXEC SQL SELECT C1 FROM T1 WHERE C1 = CURRENT APPLICATION ENCODING SCHEME;