ホスト変数配列からの複数行のデータの挿入
INSERT ステートメントでホスト変数配列を使用するのは、プログラムが実行されるまで、挿入する値の少なくともいくつかがわからない場合です。
このタスクについて
ホスト変数配列で指定された値から複数の行を挿入するには、INSERT 文の FOR n ROWS 形式または MERGE 文を使用します。
各配列には、ターゲット表の列に対応する値が含まれます。 配列の最初の値は、最初に挿入された行のその列の値に対応し、配列の2番目の値は、2番目に挿入された行のその列の値に対応します。以下同様です。 Db2 配列の宣言に基づいて値の属性を決定します。
例
ホスト変数配列 HVA1、 HVA2、 HVA3 が宣言され、ACTテーブルのACTNO、ACTKWD、ACTDESC列に挿入される値が格納されていると仮定します。 NUM-ROWSホスト変数は挿入する行数を指定し、その数は各ホスト変数配列の次元以下でなければなりません。
次の INSERT ステートメントを使用することによって、ホスト変数 NUM-ROWS に指定されている数の行を挿入できます。
EXEC SQL
INSERT INTO DSN8D10.ACT
(ACTNO, ACTKWD, ACTDESC)
VALUES (:HVA1, :HVA2, :HVA3)
FOR :NUM-ROWS ROWS
END-EXEC.