OPEN
コマンドは、行のアクティブ・セットを定義し、アクティブ・セットの最初の行の直前でカーソルを初期化します。OPEN
時のホスト変数の値が文に代入されます。このコマンドは、実際には行を取り出しません。行はFETCH
コマンドを使用して取り出されます。
カーソルと一度オープンすると、その入力変数はカーソルを再オープンするまで再検査されません。入力ホスト変数およびアクティブ・セットを変更するには、カーソルを再オープンする必要があります。
プログラム内のすべてのカーソルは、プログラムを開始するとき、またはCLOSE
コマンドを使用して明示的にクローズした後はクローズ状態です。
カーソルは事前にクローズしなくても、再オープンできます。このコマンドの詳細は、埋込みSQLの使用方法を参照してください。
この例では、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;