知识大全 JDBC存取ORACLE大型数据对象LOB几种情况的示范类
Posted 知
篇首语:犀渠玉剑良家子,白马金羁侠少年。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JDBC存取ORACLE大型数据对象LOB几种情况的示范类相关的知识,希望对你有一定的参考价值。
JDBC存取ORACLE大型数据对象LOB几种情况的示范类 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
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:@test : :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 EDA E BC */ public LobPros() /** * 往数据库中插入一个新的CLOB对象 * * @param infile 数据文件 * @throws java lang Exception * @roseuid EDA A BC */ public static void clobInsert(String infile) throws Exception /* 设定不自动提交 */ boolean defaultCommit = conn getAutoCommit(); conn setAutoCommit(false); try /* 插入一个空的CLOB对象 */ stmt executeUpdate( INSERT INTO TEST_CLOB VALUES ( EMPTY_CLOB()) ); /* 查询此CLOB对象并锁定 */ ResultSet rs = stmt executeQuery( SELECT CLOBCOL FROM TEST_CLOB WHERE ID= 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())!= ) out write(c); in close(); out close(); /* 正式提交 */ mit(); catch (Exception ex) /* 出错回滚 */ conn rollback(); throw ex; /* 恢复原提交状态 */ conn setAutoCommit(defaultCommit); /** * 修改CLOB对象(是在原CLOB对象基础上进行覆蓋式的修改) * * @param infile 数据文件 * @throws java lang Exception * @roseuid EDA B */ 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 ID= 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())!= ) out write(c); in close(); out close(); /* 正式提交 */ mit(); catch (Exception ex) /* 出错回滚 */ conn rollback(); throw ex; /* 恢复原提交状态 */ conn setAutoCommit(defaultCommit); /** * 替换CLOB对象(将原CLOB对象清除 换成一个全新的CLOB对象) * * @param infile 数据文件 * @throws java lang Exception * @roseuid EDA BF E */ 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= ); /* 查询CLOB对象并锁定 */ ResultSet rs = stmt executeQuery( SELECT CLOBCOL FROM TEST_CLOB WHERE ID= 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())!= ) out write(c); in close(); out close(); /* 正式提交 */ mit(); catch (Exception ex) /* 出错回滚 */ conn rollback(); throw ex; /* 恢复原提交状态 */ conn setAutoCommit(defaultCommit); /** * CLOB对象读取 * * @param outfile 输出文件名 * @throws java lang Exception * @roseuid EDA D */ 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= ); 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())!= ) 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 EDA E F */ public static void blobInsert(String infile) throws Exception /* 设定不自动提交 */ boolean defaultCommit = conn getAutoCommit(); conn setAutoCommit(fal cha138/Article/program/Oracle/201311/18837相关参考
Oracle中大对象(lob)处理方法和实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在o
JDBC存取Oralce数据库的注意几点事项 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Be
用PHP操纵Oracle的LOB类型的数据 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!《PHP+
通过JDBC连接oracle数据库 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!Java数据库连接
知识大全 JDBC+Hibernate将Blob数据写入Oracle
JDBC+Hibernate将Blob数据写入Oracle 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一
通过JDBC连接oracle数据库的技巧 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Java
OracleADO数据存取 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ADO是ActiveD
知识大全 关于JDBC客户端如何连接ORACLE数据库RAC的负载均衡
关于JDBC客户端如何连接ORACLE数据库RAC的负载均衡 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
浅谈存取Oracle当中扫描数据的方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! )全表扫描
知识大全 在DELPHI程序中使用ADO对象存取ODBC数据库
在DELPHI程序中使用ADO对象存取ODBC数据库 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!