応用情報技術者試験 令和6年春 午前問25 解説付き過去問
問題
ストアドプロシージャの利点はどれか。
正解
解説
ストアドプロシージャ(Stored Procedure)とは、データベース内にあらかじめ保存された一連のSQL処理のことであり、アプリケーションプログラムから呼び出して実行することができる。SQL文をアプリケーションから個別に送るのではなく、ストアドプロシージャを呼び出すだけで処理が完結するため、様々な利点がある。
- 通信量の削減
ストアドプロシージャの大きな利点の一つが、アプリケーションとDBMS間の通信量を減らせる点である。
通常、アプリケーションからSQL文を都度送信して処理する場合、ネットワーク上に複数のSQL文が流れるが、ストアドプロシージャを利用すれば、必要な処理を1回の呼出しで完了できる。これにより通信量を大幅に削減することが可能となる。 - 処理の一貫性と再利用性の向上
ストアドプロシージャに処理内容を集約することで、アプリケーション側のロジックを簡素化できる。また、同じ処理を複数のアプリケーションで共通に使いまわせるため、保守性と再利用性も向上する。 - 他の選択肢との比較
- 実行計画の数を減らす効果はあるが、主要な利点として挙げるには不十分である。
- バッファ数やI/O回数の削減は、ストアドプロシージャ単独の導入だけでは必ずしも達成できるとは限らない。これらは処理内容やアクセスパターンに強く依存する。