我正在尝试从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,);
由于
答案 0 :(得分:5)
无需使用getClob()
。
ResultSet.getString()
和setString()
在text
列上完全正常工作(PostgreSQL没有clob
数据类型,因此我假设您使用的是text
)