CLOSE 文は、オープンしている
カーソルをクローズします。これは現在の結果セットをリリースし、現在カーソルがある行によって設定されたカーソル・ロックを解放します。
CLOSE は、再度オープンするときのためにデータ構造をアクセス可能なままにしますが、カーソルを再度オープンするまで、フェッチや位置付け更新はできません。
CLOSE はオープンしているカーソルに対して発行する必要があります。宣言されたばかりのカーソルや、クローズされたカーソルに対しては発行できません。
SET name="LastName,FirstName",state="##"
&sql(DECLARE EmpCursor CURSOR FOR SELECT Name, Home_State
INTO :name,:state FROM Sample.Person)
IF SQLCODE'=0 {
WRITE !,"DECLARE Error code ",SQLCODE
QUIT }
ELSE {
WRITE !,"BEFORE: Name=",name," State=",state }
&sql(OPEN EmpCursor)
FOR { &sql(FETCH EmpCursor)
QUIT:SQLCODE
WRITE !,"DURING: Name=",name," State=",state }
&sql(CLOSE EmpCursor)
WRITE !,"AFTER: Name=",name," State=",state