Symfoware Parallel Server SQLビギナーズガイド
目次 索引 前ページ次ページ

第7章 応用プログラムの実行時に動的SQL文を実行する方法> 7.2 SQL文を動的に変更して実行する

7.2.3 動的単一行SELECT文を準備して実行する

1行のデータの取り出しを行う場合には、動的単一行SELECT文を準備して実行します。動的単一行SELECT文を実行するには、USING句を指定したEXECUTEを使用 します。動的単一行SELECT文の指定例を以下に示します。なお、SQL記述子域を操作 するSQL文の詳細については、“図:SQL記述子域(選択リスト)を使用した応用プログラムの例”の例を参照してください。

端末から入力した動的単一行SELECT文の例です。

[端末から入力した動的単一行SELECT文をstrに格納]

EXEC SQL PREPARE STMID FROM :str;
EXEC SQL ALLOCATE DESCRIPTOR 'OUTDESC' WITH MAX 100;
EXEC SQL DESCRIBE OUTPUT STMID USING SQL DESCRIPTOR 'OUTDESC';
EXEC SQL GET DESCRIPTOR 'OUTDESC' :ocount = COUNT;
for( i = 1; i <= ocount; i++) {
EXEC SQL GET DESCRIPTOR 'OUTDESC' VALUE :i …

[選択リストの情報をSQL記述子域から取得]

EXEC SQL SET DESCRIPTOR 'OUTDESC' VALUE :i …

[SQL記述子域の選択リストの情報を変更]

}
EXEC SQL EXECUTE STMID INTO SQL DESCRIPTOR 'OUTDESC';
EXEC SQL GET DESCRIPTOR 'OUTDESC' VALUE :i …

[実行結果の値の取得]

EXEC SQL DEALLOCATE DESCRIPTOR 'OUTDESC';
EXEC SQL DEALLOCATE PREPARE STMID;


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2006