バインドパラメータ
バインドパラメータは、データベースステートメントの事前解析および最適化を利用するためのデータベースおよび JDBC 機能です。バインドパラメータは、実行時に SQL ステートメントの定数を代替パラメータと置き換えるためのメカニズムです。たとえば、以下の WHERE 節の定義式では定数 'Engine' を使用しています。WTPartMaster.name = ’Engine
この定義式は、以下の静的 SQL と置換できます。WTPartMaster.name = ?
また、値 'Engine' は、実行時にパラメータ ? にバインドできます。
その後の実行時には、Cylinder などの新規の値をその同じパラメータにバインドできます。これら 2 つのステートメントが定数値を静的 SQL で直接使用した場合は、各ステートメントが個別にパース、最適化および事前コンパイルされます。バインドパラメータを使用する場合は、単一の静的 SQL ステートメントを複数回使用できます。
QuerySpec、SearchCondition、およびその他の照会クラスを使用する場合は、このバインドパラメータ機能が暗黙的にサポートされます。ただし、バインドパラメータには、以下の API を使用して明示的にアクセスすることもできます。
• getBindParameterCount()
• getBindParameterAt(int a_index)
• setBindParameterAt(Object a_value, int a_index)