java Oracle在插入后更新NCLOB
我使用Oracle11g,我找到了应该将记录插入表的旧代码
代码插入除NCLOB列之外的所有值,并且仅当值存在(可以为null)时,才更新特定列(使用PreparedStatement setCharacterStream()
)
我想将此代码更改为一次插入,但想确保没有充分的理由保留此流-为特定NCLOB列插入后更新
代码(准备好的ps和ps2声明):
ps = conn.prepareStatement(INSERT_RECORD);
//INSERT INTO DATA_RECORDS (ID) VALUES (?) and other values...
ps.setInt(1, id);
result = ps.executeUpdate() == 1;
if (data != null && result) {
StringReader reader = new StringReader(data);
ps2 = conn.prepareStatement(UPDATE_RECORD);
//UPDATE DATA_RECORDS SET DATA = ? WHERE ID = ?
ps2.setCharacterStream(1, reader, data.length());
ps.setInt(2, id);
...
ps2.executeUpdate();
共 (0) 个答案