jdbc插入修改clob类型的两种方式

方法一:
Connection con = dbl.loadConnection();
strSql = "insert into table1(id,a) values (1,EMPTY_CLOB())";
dbl.executeSql(strSql);
String str2 = "select a from "
+ " table1 where id=1";

ResultSet rs = dbl.openResultSet(str2);
if(rs.next()){
    CLOB c = ((OracleResultSet)rs).getCLOB("a");
    c.putString(1, "长字符串");
    String sql =
	    "update table1 set a=? where id=1";
    PreparedStatement pstmt = con.prepareStatement(sql);
    pstmt.setClob(1, c);
    pstmt.executeUpdate();
    pstmt.close();
}
con.commit();


方法二:
Connection con = dbl.loadConnection();
CLOB clob   = oracle.sql.CLOB.createTemporary(con, false,oracle.sql.CLOB.DURATION_SESSION);
clob.putString(1,  "长字符串");
Sql1 = "update table1 set a=? where id=1";
PreparedStatement pst = con.prepareStatement(Sql1);
pst.setClob(1, clob);
pst.executeUpdate();
pst.close();
con.commit();

总结:生成一个clob对象,通过预处理的setClob达到插入更新的目的

原文地址:https://www.cnblogs.com/dyllove98/p/3226222.html