修了試験 2017-06-11実施分 基本情報技術者試験 問28
図は,DBMSが受け付けたクエリを実行するまでの処理の流れを表している。 ①~③に入る処理の組合せとして,適切なものはどれか。 表の列見出しは①|②|③。

正答4
解説
正解は4です。 図では、クエリが①、②、③の順に処理されたあと「実行」に至る流れが示されています。 DBMS(DataBase Management System)がSQLなどのクエリを受け付けてから実行するまでの処理の順序が問われています。 【選択肢別解説】 1:× 最初にコード生成を置いていますが、文の構造を解析する前に実行用のコードを作ることはできません。 2:× 最初にコード生成、最後に構文解析を置いており、処理の順序が逆になっています。 3:× 構文解析の次にコード生成を置いていますが、最適化はコードを生成する前に行う必要があります。 4:○ ①構文解析でクエリの文法を確認して内部表現に変換し、②最適化で最も効率のよい実行手順(アクセスパス)を決め、③コード生成でその手順を実行できる形にします。 【ポイント】 クエリ処理は「構文解析、最適化、コード生成、実行」の順です。 プログラム言語のコンパイラでも、字句・構文解析のあとに最適化とコード生成が行われるのと同じ考え方です。まとめて解く
修了試験 2017-06-11実施分を通しで解く(80問)→