[pgsql-jp: 29470] bytea型の欄へbyte[]型データを格納する方法は?
Kuroda Tomohiro (黒田知宏)
kuroda @ dcinc.co.jp
2003年 3月 24日 (月) 14:15:37 JST
黒田と申します。
現在、PostgreSQLのテーブルのbytea型欄へ、
byte[] 型のバイナリデータを格納・取得しようとしています。
次に示すようなプログラムを記述しました。
String str = "abcde";
byte[] binary = str.getBytes();
conn.setAutoCommit(false);
PreparedStatement ps =
conn.prepareStatement("INSERT INTO table (password) VALUES (?)");
ps.setBytes(1, binary);
ps.executeUpdate();
ps.close();
conn.commit();
実行してみたところ、次のようなエラーが発生しました。
# executeUpdate() 実行のタイミングで発生します。
java.sql.SQLException: ERROR:
Attribute 'password' is of type 'bytea' but expression is of type
'int4'
ちゃんと byte[] 型のデータ binary を指定しているつもりなのですが、
int型と解釈されてしまっているようです。
どのように指定すれば、意図通りの動作をしてくれるのか、わかりません。
どなたかお心当たりのある方がいらっしゃれば、ご指南いただきたく思います。
以上、よろしくお願いします。
pgsql-jp メーリングリストの案内