SQL ステートメントの静的な実行

DB2® の静的 SQL は、実行時のデータ・アクセスを合理化し、アプリケーションのセキュリティーを改善することができる強力な機能です。
静的 SQL には、以下の利点があります。
動的ステートメント・キャッシュの回避
静的 SQL を使用することで、DB2 の動的ステートメント・キャッシュの競合が削減され、動的 SQL を使用するアプリケーションのパフォーマンスが向上します。
アクセス・パスの一貫性
静的 SQL は、アプリケーションの実行前にアクセス・パスを固定することによって、応答時間を予測可能で安定したものにします。一方、動的 SQL のアクセス・パスは実行時に計算されます。
アプリケーションのパフォーマンスが向上する可能性
静的 SQL では、アプリケーションのパフォーマンスが向上する可能性があります。
  • アクセス・プランが実行時より前に決定されるため、実行時に SQL ステートメントを準備する必要がなくなります。
  • 各ステートメントを準備して記述する必要がないため、クライアント・アプリケーションとデータベース・サーバーの間のネットワーク・トラフィックが削減されます。
  • 静的 SQL では、述部で使用するホスト変数またはパラメーターのデータ・タイプが厳密に強制されます。 この厳密な強制によって、入力データがデータベース内のターゲット・タイプに必ず一致します。
セキュリティーの強化
データベース・オブジェクトに対する特権を付与するのではなく、DB2 パッケージに対する EXECUTE 特権をユーザーに付与できます。
パッケージ改訂の容易性
DB2 パッケージのバージョン管理によって、以前の優れたアクセス・パスを失うリスクを犯すことなく、パッケージを再バインドできます。

pureQuery では、DB2 データベースで SQL ステートメントを静的に実行する方法を 3 つ提供しています。


フィードバック