我有一个org.json.simple.JSONObject
,我想使用PreparedStatement将其插入Oracle数据库的Clob类型列中。我该怎么办?
当我做preparedStatement.setObject(1, json_obj);
时收到错误消息:无法为org.json.simple.JSONObject推断setObject中的SQL类型
答案 0 :(得分:0)
我将json作为字符串并创建了此方法,它对我有用:
public long insertClob(String id, String json ) {
KeyHolder holder = new GeneratedKeyHolder();
jdbcTemplate.update(new PreparedStatementCreator() {
public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
PreparedStatement ps = connection.prepareStatement("UPDATE tableWithClobColumn SET clobColumn=? WHERE id=?",
Statement.RETURN_GENERATED_KEYS);
Reader reader = new StringReader(json);
ps.setClob(1, reader);
ps.setString(2, "1911030604");
return ps;
}
}, holder);
return Long.parseLong("0");
}