プライマリ・コンテンツに移動
Oracle® Database Oracleプリコンパイラのためのプログラマーズ・ガイド
12c リリース1 (12.1)
B71398-03
目次へ移動
目次
索引へ移動
索引

前
次

OPEN (実行可能埋込みSQL)

OPENの用途

カーソルをオープンし、関連付けられた問合せを評価して、USING句で指定したホスト変数名を問合せのWHERE句に代入します。

OPENの前提条件

カーソルは、オープンする前に埋込みSQLのDECLARE CURSOR文を使用して宣言する必要があります。

OPENの構文

OPENのキーワードおよびパラメータ

cursor

オープンするカーソル。

USING

関連付けられた問合せのWHERE句に代入するホスト変数を指定します。

:host_variableは、カーソルに関連付けられた文に代入する、オプションのインジケータ変数を持つホスト変数を指定します。

DESCRIPTOR

関連付けられた問合せのWHERE句に代入するホスト変数を説明する記述子を指定します。記述子は、DESCRIBE文で事前に初期化しておく必要があります。

代入は、位置に基づきます。この文で指定するホスト変数名は、対応付けられた問合せの変数名と異なってもかまいません。

OPENの使用上の注意

OPENコマンドは、行のアクティブ・セットを定義し、アクティブ・セットの最初の行の直前でカーソルを初期化します。OPEN時のホスト変数の値が文に代入されます。このコマンドは、実際には行を取り出しません。行はFETCHコマンドを使用して取り出されます。

カーソルと一度オープンすると、その入力変数はカーソルを再オープンするまで再検査されません。入力ホスト変数およびアクティブ・セットを変更するには、カーソルを再オープンする必要があります。

プログラム内のすべてのカーソルは、プログラムを開始するとき、またはCLOSEコマンドを使用して明示的にクローズした後はクローズ状態です。

カーソルは事前にクローズしなくても、再オープンできます。このコマンドの詳細は、埋込みSQLの使用方法を参照してください。

OPENの例

この例では、Pro*C/C++の埋込みSQLプログラムでのOPENコマンドの使用方法を示しています。

EXEC SQL DECLARE emp_cursor CURSOR FOR 
 SELECT ename, empno, job, sal 
 FROM emp 
 WHERE deptno = :deptno; 
EXEC SQL OPEN emp_cursor;

OPENの関連トピック

CLOSE(実行可能埋込みSQL)DECLARE CURSOR(埋込みSQLディレクティブ)FETCH(実行可能埋込みSQL)およびPREPARE(実行可能埋込みSQL)