それぞれの出口の目的は、日付列、時刻列、およびタイム・スタンプ列に対応する CHAR 型値の値をフォーマット設定または変更することです。 この出口は、JDBC ドライバー・プロパティーや DB2 プリコンパイラー・オプションなどの他のメカニズムを使用して目的を達成できない場合に特に有用です。
データベースへの入力では、ホスト変数の内容は影響を受けず、データベース列に送信される値のみが変更されます。出力では、ホスト変数の内容は変更されますが、列の値は影響を受けません。
収録されている出口は、影響を及ぼさないテンプレートです。
Record TstabN type SQLRecord
{tableNames = [["ME.MYTABLE"]], fieldsMatchColumns = yes}
10 TS2 char(26) {column="TS2", isSqlNullable=yes, sqlDataCode=392};
10 TS1 char(26) {column="TS1", isSqlNullable=yes, sqlDataCode=392};
10 DATE1 char(10) {column="DATE1", isSqlNullable=yes, sqlDataCode=384};
10 TIME1 char(8) {column="TIME1", isSqlNullable=yes, sqlDataCode=388};
end
dataitem tstype char(26) {sqlDataCode=392} end
dataitem datetype char(10) {sqlDataCode=384} end
dataitem timetype char(8) {sqlDataCode=388} end
以下のすべての sqlDataCode 値が、出口呼び出しの原因となります。
| sqlDataCode 値 | NULL 可能 | SQL 列の型 |
|---|---|---|
| 384 385 |
YES NO |
DATE |
| 388 389 |
YES NO |
TIME |
| 392 393 |
YES NO |
TIMESTAMP |
EGL SQL 検索機能を使用すると、ユーザーに作成されるレコード・パーツ内の sqlDataCode 値が自動的に配置される、という設定が可能です。詳しくは、『SQL 検索設定の変更』を参照してください。
フィールドが NULL の場合のデータベース入力中や、列が NULL の場合のデータベース出力中には、特定フィールドの出口は呼び出されません。