成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

展示JDBC存取ORACLE大型數據對象LOB幾種情況的示范類

瀏覽:3日期:2024-07-06 18:29:38
;展示JDBC存取Oracle大型數據對象LOB幾種情況的示范類import Java.io.*;import java.util.*;import java.sql.*;public class LobPros{;/** * ORACLE驅動程序 */ private static final String DRIVER = 'oracle.jdbc.driver.OracleDriver';;/** * ORACLE連接用URL */ private static final String URL = 'jdbc:oracle:thin:@test2000:1521:orac';;/** * 用戶名 */ private static final String USER = 'user';;/** * 密碼 */ private static final String PASSWord = 'pswd';;/** * 數據庫連接 */ private static Connection conn = null;;/** * SQL語句對象 */ private static Statement stmt = null;;/** * @roseuid 3EDA089E02BC */ public LobPros() {;};/** * 往數據庫中插入一個新的CLOB對象 * * @param infile - 數據文件 * @throws java.lang.Exception * @roseuid 3EDA04A902BC */ public static void clobInsert(String infile) throws Exception { /* 設定不自動提交 */ boolean defaultCommit = conn.getAutoCommit(); conn.setAutoCommit(false);;;;;;try { /* 插入一個空的CLOB對象 */ stmt.executeUpdate('INSERT INTO TEST_CLOB VALUES ('111', EMPTY_CLOB())'); /* 查詢此CLOB對象并鎖定 */ ResultSet rs = stmt.executeQuery('SELECT CLOBCOL FROM TEST_CLOB WHERE FOR UPDATE'); while (rs.next()) { ;;;;;/* 取出此CLOB對象 */ oracle.sql.CLOB clob = (oracle.sql.CLOB)rs.getClob('CLOBCOL'); /* 向CLOB對象中寫入數據 */ BufferedWriter out = new BufferedWriter(clob.getCharacterOutputStream()); BufferedReader in = new BufferedReader(new FileReader(infile)); int c; while ((c=in.read())!=-1) { out.write(c); } in.close(); out.close(); } /* 正式提交 */ conn.commit(); } catch (Exception ex) { /* 出錯回滾 */ conn.rollback(); throw ex; };;;;;/* 恢復原提交狀態 */ conn.setAutoCommit(defaultCommit); };/** * 修改CLOB對象(是在原CLOB對象基礎上進行覆蓋式的修改) * * @param infile - 數據文件 * @throws java.lang.Exception * @roseuid 3EDA04B60367 */ public static void clobModify(String infile) throws Exception { /* 設定不自動提交 */ boolean defaultCommit = conn.getAutoCommit(); conn.setAutoCommit(false);;;;;;try { /* 查詢CLOB對象并鎖定 */ ResultSet rs = stmt.executeQuery('SELECT CLOBCOL FROM TEST_CLOB WHERE FOR UPDATE'); ;while (rs.next()) { /* 獲取此CLOB對象 */ oracle.sql.CLOB clob = (oracle.sql.CLOB)rs.getClob('CLOBCOL'); /* 進行覆蓋式修改 */ BufferedWriter out = new BufferedWriter(clob.getCharacterOutputStream()); BufferedReader in = new BufferedReader(new FileReader(infile)); int c; while ((c=in.read())!=-1) { out.write(c); } in.close(); out.close(); } /* 正式提交 */ conn.commit(); } catch (Exception ex) { /* 出錯回滾 */ conn.rollback(); throw ex; };;;;;/* 恢復原提交狀態 */ conn.setAutoCommit(defaultCommit); };/** * 替換CLOB對象(將原CLOB對象清除,換成一個全新的CLOB對象) * * @param infile - 數據文件 * @throws java.lang.Exception * @roseuid 3EDA04BF01E1 */ public static void clobReplace(String infile) throws Exception { /* 設定不自動提交 */ boolean defaultCommit = conn.getAutoCommit(); conn.setAutoCommit(false);;;;;;try { /* 清空原CLOB對象 */ ;stmt.executeUpdate('UPDATE TEST_CLOB SET CLOBCOL=EMPTY_CLOB() WHERE ID='111''); /* 查詢CLOB對象并鎖定 */ ResultSet rs = stmt.executeQuery('SELECT CLOBCOL FROM TEST_CLOB WHERE FOR UPDATE'); while (rs.next()) { /* 獲取此CLOB對象 */ oracle.sql.CLOB clob = (oracle.sql.CLOB)rs.getClob('CLOBCOL'); /* 更新數據 */ BufferedWriter out = new BufferedWriter(clob.getCharacterOutputStream()); BufferedReader in = new BufferedReader(new FileReader(infile)); int c; while ((c=in.read())!=-1) { out.write(c); } in.close(); out.close(); } /* 正式提交 */ conn.commit(); } catch (Exception ex) { /* 出錯回滾 */ conn.rollback(); throw ex; };;;;;/* 恢復原提交狀態 */ conn.setAutoCommit(defaultCommit); };/** * CLOB對象讀取 * * @param outfile - 輸出文件名 * @throws java.lang.Exception * @roseuid 3EDA04D80116 */ public static void clobRead(String outfile) throws Exception ;{ /* 設定不自動提交 */ boolean defaultCommit = conn.getAutoCommit(); conn.setAutoCommit(false);;;;;;try { /* 查詢CLOB對象 */ ResultSet rs = stmt.executeQuery('SELECT * FROM TEST_CLOB WHERE ID='111''); while (rs.next()) { /* 獲取CLOB對象 */ oracle.sql.CLOB clob = (oracle.sql.CLOB)rs.getClob('CLOBCOL'); /* 以字符形式輸出 */ BufferedReader in = new BufferedReader(clob.getCharacterStream()); BufferedWriter out = new BufferedWriter(new FileWriter(outfile)); int c; while ((c=in.read())!=-1) { out.write(c); } out.close(); in.close(); } } catch (Exception ex) { conn.rollback(); throw ex; };;;;;/* 恢復原提交狀態 */ conn.setAutoCommit(defaultCommit); };/** * 向數據庫中插入一個新的BLOB對象 * * @param infile - 數據文件 * @throws java.lang.Exception * @roseuid 3EDA04E300F6 */ public static void blobInsert(String infile) throws Exception { /* 設定不自動提交 */ boolean defaultCommit = conn.getAutoCommit(); ;;;;;conn.setAutoCommit(false);;;;;;try { /* 插入一個空的BLOB對象 */ stmt.executeUpdate('INSERT INTO TEST_BLOB VALUES ('222', EMPTY_BLOB())'); /* 查詢此BLOB對象并鎖定 */ ResultSet rs = stmt.executeQuery('SELECT BLOBCOL FROM TEST_BLOB WHERE FOR UPDATE'); while (rs.next()) { /* 取出此BLOB對象 */ oracle.sql.BLOB blob = (oracle.sql.BLOB)rs.getBlob('BLOBCOL'); /* 向BLOB對象中寫入數據 */ BufferedOutputStream out = new BufferedOutputStream(blob.getBinaryOutputStream()); BufferedInputStream in = new BufferedInputStream(new FileInputStream(infile)); int c; while ((c=in.read())!=-1) { out.write(c); } in.close(); out.close(); } /* 正式提交 */ conn.commit(); } catch (Exception ex) { /* 出錯回滾 */ conn.rollback(); throw ex; };;;;;/* 恢復原提交狀態 */ conn.setAutoCommit(defaultCommit); };/** * 修改BLOB對象(是在原BLOB對象基礎上進行覆蓋式的修改) * * @param infile - 數據文件 ;;* @throws java.lang.Exception * @roseuid 3EDA04E90106 */ public static void blobModify(String infile) throws Exception { /* 設定不自動提交 */ boolean defaultCommit = conn.getAutoCommit(); conn.setAutoCommit(false);;;;;;try { /* 查詢BLOB對象并鎖定 */ ResultSet rs = stmt.executeQuery('SELECT BLOBCOL FROM TEST_BLOB WHERE FOR UPDATE'); while (rs.next()) { /* 取出此BLOB對象 */ oracle.sql.BLOB blob = (oracle.sql.BLOB)rs.getBlob('BLOBCOL'); /* 向BLOB對象中寫入數據 */ BufferedOutputStream out = new BufferedOutputStream(blob.getBinaryOutputStream()); BufferedInputStream in = new BufferedInputStream(new FileInputStream(infile)); int c; while ((c=in.read())!=-1) { out.write(c); } in.close(); out.close(); } /* 正式提交 */ conn.commit(); } catch (Exception ex) { /* 出錯回滾 */ conn.rollback(); throw ex; };;;;;/* 恢復原提交狀態 */ conn.setAutoCommit(defaultCommit); ;};/** * 替換BLOB對象(將原BLOB對象清除,換成一個全新的BLOB對象) * * @param infile - 數據文件 * @throws java.lang.Exception * @roseuid 3EDA0505000C */ public static void blobReplace(String infile) throws Exception { /* 設定不自動提交 */ boolean defaultCommit = conn.getAutoCommit(); conn.setAutoCommit(false);;;;;;try { /* 清空原BLOB對象 */ stmt.executeUpdate('UPDATE TEST_BLOB SET BLOBCOL=EMPTY_BLOB() WHERE ID='222''); /* 查詢此BLOB對象并鎖定 */ ResultSet rs = stmt.executeQuery('SELECT BLOBCOL FROM TEST_BLOB WHERE FOR UPDATE'); while (rs.next()) { /* 取出此BLOB對象 */ oracle.sql.BLOB blob = (oracle.sql.BLOB)rs.getBlob('BLOBCOL'); /* 向BLOB對象中寫入數據 */ BufferedOutputStream out = new BufferedOutputStream(blob.getBinaryOutputStream()); BufferedInputStream in = new BufferedInputStream(new FileInputStream(infile)); int c; while ((c=in.read())!=-1) { out.write(c); } in.close(); out.close(); } /* 正式提交 */ conn.commit(); } catch (Exception ex) { ;/* 出錯回滾 */ conn.rollback(); throw ex; };;;;;/* 恢復原提交狀態 */ conn.setAutoCommit(defaultCommit); };/** * BLOB對象讀取 * * @param outfile - 輸出文件名 * @throws java.lang.Exception * @roseuid 3EDA050B003B */ public static void blobRead(String outfile) throws Exception { /* 設定不自動提交 */ boolean defaultCommit = conn.getAutoCommit(); conn.setAutoCommit(false);;;;;;try { /* 查詢BLOB對象 */ ResultSet rs = stmt.executeQuery('SELECT BLOBCOL FROM TEST_BLOB WHERE ID='222''); while (rs.next()) { /* 取出此BLOB對象 */ oracle.sql.BLOB blob = (oracle.sql.BLOB)rs.getBlob('BLOBCOL'); /* 以二進制形式輸出 */ BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(outfile)); BufferedInputStream in = new BufferedInputStream(blob.getBinaryStream()); int c; while ((c=in.read())!=-1) { out.write(c); } in.close(); out.close(); } /* 正式提交 */ ;conn.commit(); } catch (Exception ex) { /* 出錯回滾 */ conn.rollback(); throw ex; };;;;;/* 恢復原提交狀態 */ conn.setAutoCommit(defaultCommit); };/** * 建立測試用表格 * @throws Exception */ public static void createTables() throws Exception { try { stmt.executeUpdate('CREATE TABLE TEST_CLOB ( ID NUMBER(3), CLOBCOL CLOB)'); stmt.executeUpdate('CREATE TABLE TEST_BLOB ( ID NUMBER(3), BLOBCOL BLOB)'); } catch (Exception ex) {;;;;;} };/** * @param args - 命令行參數 * @throws java.lang.Exception * @roseuid 3EDA052002AC */ public static void main(String[] args) throws Exception { /* 裝載驅動,建立數據庫連接 */ Class.forName(DRIVER); conn = DriverManager.getConnection(URL,USER,PASSWORD); stmt = conn.createStatement();;;;;;/* 建立測試表格 */ createTables();;;;;;/* CLOB對象插入測試 */ clobInsert('c:/clobInsert.txt'); clobRead('c:/clobInsert.out');;;;;;/* CLOB對象修改測試 */ clobModify('c:/clobModify.txt'); clobRead('c:/clobModify.out');;;;;;/* CLOB對象替換測試 */ clobReplace('c:/clobReplace.txt'); clobRead('c:/clobReplace.out');;;;;;/* BLOB對象插入測試 */ blobInsert('c:/blobInsert.doc'); blobRead('c:/blobInsert.out');;;;;;/* BLOB對象修改測試 */ ;;;;;blobModify('c:/blobModify.doc'); blobRead('c:/blobModify.out');;;;;;/* BLOB對象替換測試 */ blobReplace('c:/blobReplace.doc'); blobRead('c:/bolbReplace.out');;;;;;/* 關閉資源退出 */ conn.close(); System.exit(0); }}
標簽: JDBC
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
日韩欧美一级在线播放| 国产大陆亚洲精品国产| 精品一区二区三区不卡 | 在线电影一区| 久久综合色婷婷| 风间由美一区二区三区在线观看 | 精品9999| 国产精品无人区| 国产福利一区二区三区视频| 欧美性欧美巨大黑白大战| 天天av天天翘天天综合网色鬼国产 | 欧美一区日本一区韩国一区| 精品在线一区二区| 欧美日韩国产综合一区二区三区| 日日摸夜夜添夜夜添亚洲女人| 免费日韩av片| 午夜久久久久久久久久一区二区| 免费在线国产精品| 丝瓜av网站精品一区二区| 久久激情视频| 日本三级亚洲精品| 色欧美日韩亚洲| 日本不卡中文字幕| 欧美体内she精视频| 美腿丝袜亚洲综合| 欧美日韩在线播放一区| 国产乱一区二区| 日韩午夜在线观看| 国产乱对白刺激视频不卡 | 国产欧美日韩麻豆91| 91片在线免费观看| 欧美激情中文字幕| 亚洲高清视频在线观看| 亚洲一区二区三区国产| 色先锋久久av资源部| 精品一区二区国语对白| 日韩一区二区三区四区五区六区| 久久精品国产网站| 在线91免费看| 丁香五精品蜜臀久久久久99网站 | 亚洲欧美日本在线| 99精品黄色片免费大全| 久久久精品一品道一区| 99热这里都是精品| 国产亚洲制服色| 亚洲国产高清一区| 亚洲高清免费在线| 欧美日韩国产精品成人| 成人一级视频在线观看| 日本一区二区三区高清不卡| 雨宫琴音一区二区在线| 亚洲图片自拍偷拍| 欧美在线你懂的| 福利电影一区二区三区| 中文字幕国产一区二区| 亚洲精品久久| 秋霞午夜鲁丝一区二区老狼| 欧美日本在线播放| 99re视频这里只有精品| 最新不卡av在线| 久久成人亚洲| 黄网站免费久久| 久久美女高清视频| 国产精品乡下勾搭老头1| 久久亚区不卡日本| 国内视频精品| 偷拍自拍另类欧美| 欧美日韩电影在线播放| 懂色一区二区三区免费观看| 日本一区免费视频| 亚洲人人精品| 奇米影视7777精品一区二区| 欧美人伦禁忌dvd放荡欲情| 丁香桃色午夜亚洲一区二区三区| 国产精品蜜臀在线观看| 国产美女一区| 美女视频黄免费的久久| 日韩欧美国产成人一区二区| 伊人久久亚洲热| 裸体一区二区三区| 国产亚洲综合av| 色综合久久99| 99久久精品免费看国产| 亚洲制服欧美中文字幕中文字幕| 欧美电影影音先锋| 欧美日韩国产三区| 青青草原综合久久大伊人精品优势| 欧美精品一区二区久久婷婷| 一区二区欧美日韩| 国产成人精品在线看| 一区二区三区日韩欧美| 日韩一区二区免费高清| 国产精品久久久亚洲一区| 国产麻豆成人传媒免费观看| 欧美极品xxx| 日本精品一级二级| 色综合视频一区二区三区高清| 亚洲成av人综合在线观看| www日韩大片| 色老汉一区二区三区| 99re视频精品| 亚洲第四色夜色| 国产午夜一区二区三区| 91激情在线视频| 欧美日韩亚洲一区二区三区在线观看| 日韩精品乱码av一区二区| 久久精品人人爽人人爽| 91福利精品视频| 狠狠爱www人成狠狠爱综合网 | 麻豆精品在线播放| 日韩一区欧美一区| 日韩欧美的一区二区| 麻豆成人av| 色综合中文字幕国产 | 国产人久久人人人人爽| 精品视频在线免费| 亚洲日本成人| 95精品视频在线| 久久99精品国产麻豆婷婷| 亚洲欧美激情插 | 亚洲bdsm女犯bdsm网站| 亚洲精品一区二区三区香蕉| 久久久精品动漫| 午夜精品一区二区三区四区| 激情另类小说区图片区视频区| 亚洲一区日韩精品中文字幕| 欧美国产视频在线| 91精品蜜臀在线一区尤物| 国产精品视频免费观看| 欧美阿v一级看视频| 国内外精品视频| 午夜视频在线观看一区二区三区| 国产日韩精品一区二区三区在线| 777a∨成人精品桃花网| 久久亚洲国产精品日日av夜夜| 亚洲成人在线视频网站| av一二三不卡影片| 理论片日本一区| 亚洲一区二区在线免费观看视频| 中文字幕精品一区二区三区精品| 日韩欧美久久久| 欧美亚洲国产怡红院影院| 国产精品久久国产愉拍| 黄色综合网站| 欧美成人久久| 国产成人亚洲综合色影视| 日韩专区中文字幕一区二区| 一区二区三国产精华液| 黑人精品欧美一区二区蜜桃| 天堂在线一区二区| 亚洲女人的天堂| 中文字幕精品在线不卡| 精品福利一二区| 欧美一二区视频| 欧美顶级少妇做爰| 欧美日韩精品欧美日韩精品| 国产精品一区二区免费不卡 | 亚洲免费视频成人| 中文字幕在线不卡视频| 国产精品污网站| 日本一区二区三区电影| 久久久久久99精品| 久久综合五月天婷婷伊人| 精品国产伦理网| 日韩一区二区免费高清| 88在线观看91蜜桃国自产| 欧美久久久久久久久久| 欧美日韩免费一区二区三区视频| 欧美伊人久久大香线蕉综合69 | 狠久久av成人天堂| 欧美精品系列| 欧美tk—视频vk| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 亚洲精品伦理在线| ●精品国产综合乱码久久久久| 欧美国产日韩在线观看| 欧美国产欧美综合| 国产精品久久久久久妇女6080| 中文字幕日本不卡| 亚洲蜜臀av乱码久久精品蜜桃| 亚洲免费在线观看| 亚洲高清免费观看高清完整版在线观看 | 欧美日韩一区在线播放| 亚洲视频观看| 亚洲国产专区校园欧美| 亚洲免费不卡| 亚洲一区二区三区涩| 亚洲欧美不卡| 欧美在线一区二区| 7777精品伊人久久久大香线蕉超级流畅| 欧美嫩在线观看| 精品国产乱码久久久久久蜜臀| 国产日韩欧美制服另类| 国产精品超碰97尤物18| 一区二区三区**美女毛片| 午夜在线成人av| 久久精品国产久精国产| 国产精品一卡二卡在线观看| 成人h精品动漫一区二区三区| 不卡大黄网站免费看|