oracle - 如何将文本附加到 oracle clob

标签 oracle jdbc oracle9i clob

是否可以在不重新阅读和重写整个内容的情况下将文本附加到 oracle 9i clob?

我试过这个:

PreparedStatement stmt = cnt.prepareStatement(
        "select OUT from QRTZ_JOBEXEC where EXEC_ID=? "
            + "for update",
        ResultSet.TYPE_FORWARD_ONLY,
        ResultSet.CONCUR_UPDATABLE);
try {
    stmt.setLong(1, id);
    ResultSet rs = stmt.executeQuery();
    if (rs.next()) {
        Clob clob = rs.getClob(1);
        long len = clob.length();
        Writer writer = clob.setCharacterStream(len+1);
        try {
            PrintWriter out = new PrintWriter(writer);
            out.println(line);
            out.close();
        } finally {
            writer.close();
        }
        rs.updateClob(1, clob);
        rs.updateRow();
    }
    rs.close();
} finally {
    stmt.close();
}

但我在调用 setCharacterStream 时收到“不支持的功能”异常。

最佳答案

DBMS_LOB.APPEND是关键。

关于oracle - 如何将文本附加到 oracle clob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6869527/

相关文章:

java - hibernate.hbm2ddl.auto 配置

sql - SELECT SUM 在没有记录时返回一行

java - 这个查询有什么问题,为什么它给我以下错误?

oracle - 查找 block 中游标或表列的数据类型

尝试连接到 Oracle 数据库时出现 java.sql.SQLException

mysql - oracle查询从表中获取最后4条记录

.net - 在数组绑定(bind)中使用直接路径加载提示是否错误?

jdbc - websphere 测试连接失败 java.sql.SQLException : invalid arguments in callDSRA0010E

Java PreparedStatement RETURN_GENERATED_KEYS 不工作

c# - ORA-01008: 并非所有变量都绑定(bind)。他们被束缚