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