Hitachi

ノンストップデータベース HiRDB Version 10 UAP開発ガイド


16.9.2 ?パラメタでの指定方法

?パラメタに値を指定する場合,PreparedStatement. setBlob()メソッド,及びCallableStatement.setBlob()メソッドを使用する方法があります。これらを使用する場合の注意点を次に示します。

〈この項の構成〉

(1) Blobインタフェースを実装したオブジェクトを使用する場合

setBlob()メソッドを使用する場合,Blobインタフェースを実装したオブジェクトを指定する必要があります。また,Blobインタフェースを実装したオブジェクトをUAPが作成する必要があります。

JDBCでは,Blob.getBytes()メソッドで,設定する値をbyte[]の形式で取得します。次に示す方法で,設定する値を取得します。

Blob.getBytes(1, (int)(Blob.length()))

UAPでは,getBytes()メソッドとlength()メソッドでは,正常な値を返す必要があります。JDBCでは,これらのメソッドで返される値が正しいものとして動作します。

(2) ResultSet.getBlob()メソッド,又はCallableStatement.getBlob()メソッドで取得したBlobオブジェクトを使用する場合

JDBCからの実行結果として,ResultSet.getBlob()メソッドやCallableStatement.getBlob()メソッドで取得したBlobオブジェクトをそのまま使用する場合,位置付け子機能を使用したアクセスでの取得かどうかで動作が異なります。