データベース
SQL のカーソルを使って複数行の結果を1行ずつ処理する際、SQL 文の正しい実行順序はどれか。
ア.OPEN → DECLARE → FETCH → CLOSE
イ.FETCH → DECLARE → OPEN → CLOSE
ウ.DECLARE → OPEN → FETCH → CLOSE正解
エ.DECLARE → FETCH → OPEN → CLOSE
解説
カーソル操作は「図書館での本の借り出し」のようなもの。まず「この本を借りたい」と申請書を書く(DECLARE)。受付で本棚から取り出してもらう(OPEN)。1冊ずつ手元に持ってくる(FETCH)。読み終わったら返却する(CLOSE)。この順序を守らないと借りられない。
なぜ ウ が正解か
カーソル操作の正しい順序: ①DECLARE CURSOR: カーソルに SELECT 文を定義(まだ実行されない) ②OPEN CURSOR: SELECT 文を実行し結果セットを生成、カーソルを先頭前に位置付け ③FETCH: カーソルを次の行に移動し、その行のデータを変数に取得(繰り返し実行) ④CLOSE CURSOR: カーソルを閉じ、結果セットのリソースを解放 (必要に応じて DEALLOCATE でカーソルの定義自体を削除する場合もある)
出典: AI生成問題(学習用)