☆☆☆★☆☆☆

唯有努力才能活成自己想要活成的样子

导航

oracle的clob字段写入与读取

lob字段基本分为clob和blob,分别存储大文本和二进制流(图片)内容,以下记录下代码,仅供自己查看

/**
 * 读取clob
*/
public String selectClob() {
String content = "null";
try {
connection = DB14Util.getCon();
connection.setAutoCommit(false);
ResultSet rs = null;
CLOB clob = null;
String sql = "";
sql = "select TRACK_SPOT from IOV_DATA_SAVING where C_DATA_NO ='2007100858' ";
PreparedStatement pstmt = connection.prepareStatement(sql);
rs = pstmt.executeQuery();
if (rs.next()) {
clob = (CLOB) rs.getClob(1);
if (clob != null && clob.length() != 0) {
content = clob.getSubString((long) 1, (int) clob.length());
}
}
rs.close();
connection.commit();
pstmt.close();
connection.close();
} catch (SQLException e) {
e.printStackTrace();
content = "error";
}
System.out.println(content);
return content;
}

/**
* 修改clob
*/
public static void updateClob(Map<Long,String> tidValMap){
connection = DB14Util.getCon();
String car_saving_tb = "IOV_DATA_SAVING";
try {
connection.setAutoCommit(false);
for (Long key : tidValMap.keySet()) {
String updateSql = "update " + car_saving_tb + " set TRACK_SPOT = empty_clob() where C_DATA_NO = ? " ;
PreparedStatement pstmt = connection.prepareStatement(updateSql);
Writer outStream = null;
String jsonStr = tidValMap.get(key);
pstmt.setString(1, key.toString());
pstmt.executeUpdate();
connection.commit();
String update = "select TRACK_SPOT from " + car_saving_tb + " where C_DATA_NO ='" + key + "' for update";
pstmt = connection.prepareStatement(update);
ResultSet rs = pstmt.executeQuery();
if (rs.next()) {
//得到java.sql.Clob对象后强制转换为oracle.sql.CLOB
oracle.sql.CLOB clob = (oracle.sql.CLOB) rs.getClob("TRACK_SPOT");
outStream = clob.getCharacterOutputStream();
//data是传入的字符串,定义:String data
char[] c = jsonStr.toCharArray();
outStream.write(c, 0, c.length);
outStream.flush();
outStream.close();
}
rs.close();
connection.commit();
pstmt.close();
}
}catch (SQLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
OracleConnUtil.closeConn(connection);
}
 

 

posted on 2021-11-19 11:07  Yr-Zhang  阅读(1965)  评论(0编辑  收藏  举报