26.3.1 表の作成
バッチデータの表を作成します。表の構成,バッチデータの量を考慮してRDエリアを設計します。バッチデータの表名,列名はOBM構成定義obmdefコマンドで設定した表名,列名としてください。キー列は,OBM構成定義lotdefオペランドの-kオプションを設定した階層に対応して作成します。ロットが2階層以上の場合は,最下位ロットのキー列は必ず作成します。
また,同時にノーマルトランザクションを実行するロットのバッチデータは,格納するRDAREAが別となるように横分割することを推奨します。
表名/列名 |
HiRDB上のテーブル名/列名 |
列属性,制約 |
備考 |
---|---|---|---|
バッチデータ表 |
obmdef -d tablenameオペランド設定値 |
− |
行数は, バッチデータ数(トレイラレコードを含む)+1(ヘッダレコードを使用する場合) |
キー1列 |
obmdef -c key1オペランド設定値 |
CHARACTER(n) NOT NULL 1≦n≦8 |
lotentry -k key1_sizeオペランドに設定したキーの長さと同じにしてください。 -k key1_sizeオペランドに0を設定した場合は,列の作成は不要です。 |
キー2列 |
obmdef -c key2オペランド設定値 |
CHARACTER(n) NOT NULL 1≦n≦8 |
lotentry -k key2_sizeオペランドに設定したキーの長さと同じにしてください。 -k key2_sizeオペランドに0を設定した場合は,列の作成は不要です。 |
キー3列 |
obmdef -c key3オペランド設定値 |
CHARACTER(n) NOT NULL 1≦n≦8 |
lotentry -k key1_sizeオペランドに設定したキーの長さと同じにしてください。 -k key3_sizeオペランドに0を設定した場合は,列の作成は不要です。 |
一連通番列 |
obmdef -c seqnumオペランド設定値 |
INTEGER NOT NULL |
必須。 |
データ列 |
obmdef -c dataオペランド設定値 |
BINARY(n) NOT NULL 1≦n≦32,000 |
必須。 |
表作成のSQLのサンプルを次に示します。
CREATE TABLE OBM1 (KEY1 CHARACTER(8) NOT NULL, SEQNUM INTEGER NOT NULL, BDATA BINARY(4096) NOT NULL) PARTITIONED BY KEY1 IN ((AREA1)'LOT10 ',(AREA02)'LOT20 ',(AREA03))