問題 No.4174
データベースに対する一連の処理手続きをまとめたプログラムをあらかじめデータベース管理システム(DBMS)内に保存しておき、クライアントからの要求に応じてデータベース側で実行する仕組みを指す用語はどれか。
【正解の解説】
ストアドプロシージャ
レストランの注文で例えると、毎回細かい指示を出すのではなく、「いつもの定食」というセットメニューを厨房に丸ごと覚えさせておき、「定食一丁!」と一声かけるだけで作ってもらうようなものです。処理をデータベース側でまとめて実行するため、通信量を減らして高速に処理できるという大きなメリットがあります。
スポンサーリンク
【その他の選択肢の解説】
トランザクションログ
プログラムの実行手順をまとめたストアドプロシージャとは異なり、こちらは家計簿のように「いつ、どのデータをどう変更したか」の足跡を記録する日記帳のような役割を持ちます。試験では、プログラムを保存する仕組みと、変更履歴を記録する仕組みを混同させる典型的な罠としてよく出題されます。
データベースビュー
処理手続きをまとめたプログラムであるストアドプロシージャとは異なり、こちらは「見せかけの窓口」のようなものです。複雑な検索結果を毎回計算する手間を省き、あたかも1つの表があるかのように手軽に参照できるようにする目的で使われますが、データを実際に加工するプログラムの保存は行えません。
トリガーファンクション
クライアントからの要求に応じて明示的に呼び出されるストアドプロシージャと似ていますが、こちらは「条件を満たしたら自動で発動するトラップ」のようなものです。例えば、データが書き込まれた瞬間に自動で別の表を更新するような場面で使われ、実行されるタイミングが明示的か自動的かという点が決定的な違いです。