過去問解きまくり研究所 ホーム

平成30年度 春期 午前 問28

データベース

次の埋込み SQL を用いたプログラムの一部において,X は何を表す名前か。

EXEC SQL OPEN X;
    EXEC SQL FETCH X INTO :NAME, :DEPT, :SALARY;
    EXEC SQL UPDATE 従業員
            SET 給与 = 給与 * 1.1
            WHERE CURRENT OF X;
EXEC SQL CLOSE X;
答えと解説を見る

✓ これが正解アカーソル

解説

結果を1行ずつ指し示す名前がカーソルです。

並んでいる命令を順に見ると、まず開く操作をし、次に取り出す操作で値を受け取り、更新のときには今どこを指しているかを条件として使い、最後に閉じています。表そのものやその定義であれば、開いたり閉じたり、1行ずつ取り出したりはしません。この一連の操作を受け付けられるのは、問合せの結果の中を1行ずつ進んでいく仕組みの名前でした。それがカーソルです。だからカーソルが当たりました。残る三つは、いずれも操作の対象になるものの名前であって、今どこを指しているかという状態を自分では持ちません。一つはデータベースの構造の定義をひとまとめにした枠組み、一つは行と列で値を保持する表、もう一つは問合せに名前を付けて表のように扱えるようにしたものでした。位置を持たない点で、三つとも当てはまりません。

ほかの選択肢はなぜ違うのか

出典:平成30年度 春期 基本情報技術者試験 午前 問28

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)