插入數據庫
CLOB tempClob = null;
try {
Connection conn = getConnection();
PreparedStatement = = conn.prepareStatement("UPDATE PROGRAM_HISTORY SET DETAILS = ? WHERE ID = 12");
tempClob = CLOB.createTemporary(conn, true, CLOB.DURATION_SESSION);
tempClob.open(CLOB.MODE_READWRITE);
Writer tempClobWriter = tempClob.getCharacterOutputStream();
tempClobWriter.write(clobData);
tempClobWriter.flush();
tempClobWriter.close();
tempClob.close();
pStmt.setClob(1, tempClob);
pStmt.execute();
} catch (Exception ex) { // Trap errors
System.out.println(" Error Inserting Clob : "+ex.toString());
ex.printStackTrace();
}finally{
if(tempClob != null ) tempClob.freeTemporary();
opstmt.close();
conn.close();
}
?獲取
Oracle rs.getClob("")轉String
oracle數據中定義為clob類型的字段,如果用rs.getString()方法獲取,值一直為nul,無法取出
用rs.getClob()取出來為Clob型
需把Clob型轉為String類型
第一種方法:
rs = pstmt.executeQuery();
while(rs.next()){
Reader reader = rs.getClob("afterStepScript")
.getCharacterStream();
BufferedReader r = new BufferedReader(reader);
StringBuffer sb = new StringBuffer();
String line;
try {
while ((line = r.readLine()) != null) {
sb.append(line);
//sb.append("\r\n");
}
} catch (IOException e) {
e.printStackTrace();
}
String afterStepScript=sb.toString();
?第二種方法
Clob clob=rs.getClob("insideScript");
String insideScript="";
if(clob!=null){
insideScript=clob.getSubString((long)1, (int)clob.length());
}
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

