Oracle数据库Clobl类型的插入

int id =1;
PreparedStatement ps = conn.prepareStatement("select knowledge_SEQ.nextval from dual");
ResultSet rs = ps.executeQuery();
if (rs.next()) {// 查询序列值:Id
id = rs.getInt(1);
}
rs.close();

String sql = "insert into knowledge(id,title,knowledgeClass,addtime,userid,departlist,content,keyword,sh,introduction,click";
if (knowledge.getFileName() != null
&& !"".equals(knowledge.getFileName())&&knowledge.getFilePath() != null
&& !"".equals(knowledge.getFilePath())) {
sql+=",fileName,filePath) values("+id+",?,?,?,?,?,?,?,?,?,?,'"+knowledge.getFileName()+"','"+knowledge.getFilePath()+"')";
} else {
sql+=") values("+id+",?,?,?,?,?,?,?,?,?,?)";
}
ps = conn.prepareStatement(sql);
ps.setString(1, knowledge.getTitle());
ps.setInt(2, knowledgeClassId);
ps.setString(3, knowledge.getAddtime());
ps.setInt(4, userId);
ps.setInt(5, departId);
ps.setClob(6, CLOB.empty_lob());
ps.setString(7, knowledge.getKeyword());
ps.setInt(8, knowledge.getSh());
ps.setString(9, knowledge.getIntroduction());
ps.setInt(10, knowledge.getClick());

ps.executeUpdate();

sql= "select content from knowledge where id="+id+" for update";
ps = conn.prepareStatement(sql);
ResultSet rs_clob = ps.executeQuery();
while ( rs_clob .next()) {
/* 取出clob数据*/
oracle.sql.CLOB clob = (oracle.sql.CLOB) rs_clob .getClob(1);

/* 向clob中写入数据*/
clob.putString(1, knowledge.getContent());
}
rs_clob.close();

ps.close();
注意:若是本身添加信息内容较少时,不使用clob的相关操作,虽暂时可添加成功,但大量数据量时有异常
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值