ストアドプロシージャ
意味・解説
頻繁に利用する一連のSQL操作をひとまとめにして、データベースサーバ上に保存(ストアド)したプログラム。
クライアントは名前と引数を指定して呼び出すだけで処理を実行できる。1回の呼び出しで複雑な処理が完了するため、ネットワークの通信量(トラフィック)を削減でき、あらかじめコンパイルされているため実行速度も速い。ビジネスロジックをDB側に持たせる際によく利用される。
くわしく
ストアドプロシージャは、データベース操作の「マクロ」のような機能です。通常、複雑な処理を行うにはクライアント(PC)とサーバの間で何度もSQL文をやり取りする必要がありますが、ストアドプロシージャを使えば、サーバ内で一括処理して結果だけを返すことができます。ポイントは、通信回数を減らすことでシステム全体のパフォーマンスが劇的に向上するからです。また、データベース側にロジックを隠蔽できるため、アプリケーション側から不正な操作をさせないといったセキュリティ上のメリットや、仕様変更時にサーバ側のプログラムを直すだけで済むという保守上のメリットもあります。実務では、銀行の複雑な利息計算や、在庫引き当て処理など、複数の表を更新し、高い整合性とスピードが求められる処理に多用されます。試験では「ネットワーク負荷の軽減」や「サーバ側に保存」というキーワードが正解のポイントです。
例文
ストアドプロシージャを導入し、複雑な売上集計ロジックをサーバ側で完結させることで、アプリの動作を高速化した。
同義語: 保存済み手続き
分類: データベース操作