戦国IT - 情報処理技術者試験の過去問対策サイト
お知らせお問い合わせ料金プラン

応用情報技術者 2013年 春期 午前229


問題文

埋込みSQLにおいて、問合せによって得られた導出表を1行ずつ親プログラムに引き渡す操作がある。この操作と関係の深い字句はどれか。

選択肢

CURSOR(正解)
ORDER BY
UNION
UNIQUE

埋込みSQLにおける導出表の1行ずつの引き渡し操作【午前2 解説】

要点まとめ

  • 結論:導出表を1行ずつ親プログラムに引き渡す操作は「CURSOR」に関係します。
  • 根拠:CURSORはSQLの結果セットを逐次処理するための仕組みで、1行ずつデータを取得可能です。
  • 差がつくポイント:ORDER BYやUNIONは結果の並びや結合に関するキーワードであり、1行ずつの引き渡しとは直接関係しません。

正解の理由

CURSORは埋込みSQLで問合せ結果を逐次的に処理するための制御構造です。導出表(結果セット)を一括で受け取るのではなく、1行ずつ親プログラムに渡して処理を行う際に使います。これにより大量データの効率的な処理や逐次的なデータ操作が可能となります。

よくある誤解

ORDER BYは結果の並び順を指定するだけで、行単位の引き渡しとは無関係です。UNIONは複数の問合せ結果を結合する操作であり、CURSORの役割とは異なります。

解法ステップ

  1. 問題文の「導出表を1行ずつ親プログラムに引き渡す操作」に注目する。
  2. SQLのキーワードの意味を整理し、1行ずつ処理する仕組みを考える。
  3. CURSORが逐次的に行を取得する機能であることを確認する。
  4. 他の選択肢が行単位の引き渡しに関係しないことを理解する。
  5. よって「ア: CURSOR」が正解と判断する。

選択肢別の誤答解説

  • ア: CURSOR — 正解。問合せ結果を1行ずつ処理するための制御構造。
  • イ: ORDER BY — 結果の並び順を指定する句であり、行単位の引き渡しとは無関係。
  • ウ: UNION — 複数の問合せ結果を結合する操作で、逐次処理とは異なる。
  • エ: UNIQUE — 重複排除の制約や句であり、行の引き渡し操作とは関係ない。

補足コラム

CURSORは埋込みSQLだけでなく、ストアドプロシージャやトリガー内でも利用されます。大量データを一括で処理するとメモリ負荷が高くなるため、CURSORを使って1行ずつ処理することで効率的なリソース管理が可能です。ただし、CURSORは処理速度が遅くなる場合もあるため、必要に応じて使い分けることが重要です。

FAQ

Q: CURSORはどのように宣言・使用しますか?
A: 一般的にCURSORはSQL文で宣言し、OPENで開き、FETCHで1行ずつ取得し、最後にCLOSEで閉じます。
Q: ORDER BY句はCURSORの動作に影響しますか?
A: はい。CURSORで取得する行の順序はORDER BY句で指定した順序になります。

関連キーワード: 埋込みSQL, CURSOR, 導出表、逐次処理、SQL制御構造
← 前の問題へ次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

応用情報技術者
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてプライバシーポリシー利用規約特商法表記開発者について