- ベストアンサー
静的SQL、動的SQL?
静的SQL、動的SQLの違いって? よくわからないので教えてください
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
静的SQLは、SQLを含むアプリケーション等のコンパイル時に、SQL文を予め前処理(アクセス計画等の作成)しておき、実行時に前処理するオーバヘッドをなくす方法です。 動的SQLは、アプリケーション実行時に、文字列でSQL文を組み立てて前処理後、実行する方法です。 ストアドプロシジャ等は、RDBMSにより前処理済の場合と、前処理未実施の場合があります。 静的SQLでは、事前にアクセス計画が決まっているので、SQLの実行を早く行なえます。その反面、表名や検索条件で使用する列名などを変更はできません。 一方、動的SQLでは、実行時に操作対象の表や列名、条件式等を自由に変えられますが、実行時に前処理するオーバーヘッドがかかります。