私は次のコードを使用していますoracle.sql.BLOB
BLOB b = BLOB.createTemporary(conn, false, BLOB.DURATION_SESSION);
//conn is a PostgreSQL connection (java.sql.Connection object)
b.setBytes(1, someString.getBytes());
ps.setBlob(++i, b); //ps is a PreparedStatement
createTemporary
Oracle接続が必要なため、明らかに機能しません。
Postgres接続を使用してこれを達成する同等の方法は何ですか? Blobに相当する PostgresはByteAであることを理解しています。対象列は
bytea
列です。次のことだけできますか?または、同じ効果を達成する適切な方法はありますか?ps.setBytes(++i, someString.getBytes());
また、Oracle 固有のコードを DB ベンダーに依存しないようにするにはどうすればよいですか?
oracle.sql.BLOB
( Oracle 接続であってもの使用を避ける)