使用postgreSQL的CLOB字符串

时间:2012-08-27 10:47:18

标签: sql postgresql clob

我正在尝试从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,);

由于

1 个答案:

答案 0 :(得分:5)

无需使用getClob()

ResultSet.getString()setString()text列上完全正常工作(PostgreSQL没有clob数据类型,因此我假设您使用的是text