10

postgreSQL DBからclobを読み取り、変更して、書き戻そうとしています。

次のコードを使用して、CLOBを正常に読み取ることができました。

PreparedStatement statement = connection.prepareStatement("SELECT clob_column from data where id = 1");
ResultSet executeQuery = statement.executeQuery();
executeQuery.next()
Clob fetchedClob = executeQuery.getClob("clob_column");

しかし、次を使用して新しいデータで新しいCLOBを作成しようとすると、次のようになります。

Clob newClob = connection.createClob();

次のエラーが発生します。

java.lang.AbstractMethodError: com.mchange.v2.c3p0.impl.NewProxyConnection.createClob()Ljava/sql/Clob;  

さらに、フェッチされたCLOBを編集しようとすると、次のコマンドを使用します。

fetchedClob.setString(0, "new string");

次のエラーが発生します。

Method org.postgresql.jdbc4.Jdbc4Clob.setString(long,str) is not yet implemented.

何か案が?

更新:ここにテーブルの定義があります

CREATE TABLEデータ(id bigint NOT NULL、clob_column text、);

ありがとう

4

1 に答える 1

7

使用する必要はありませんgetClob()

ResultSet.getString()setString()列で完全に正常に動作しますtext(PostgreSQLにはclobデータ型がないため、使用していると思いますtext

于 2012-08-27T12:31:45.207 に答える