欢迎来到天天文库
浏览记录
ID:34724799
大小:49.97 KB
页数:4页
时间:2019-03-10
《oracle10g中用setstring方法写clob字段》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、本文主要讲解1、在Oracle10g中的新的,方便处理Clob大字段的JDBCApi2、以及一个java中处理大字段的一个示例程序A、什么是ClobLOBs(LargeOjbects)用来存储没有结构的数据,比如大文本内容,图像文件,或是视频等等。·Oracle里有3种LOB,BLOB(BinaryLOB),CLOB(CharacterLOB),和NCLOB(NationalCharacterLOB).·每一个LOB对象会存储成为一个系统文件,被称为BFILEs.B、处理Clob在10g之前Oracle提供了从ja
2、va.sql.CLOB扩展的oracle.sql.CLOB对象来处理。从10g以后Oracle的jdbc加入了新的API,OraclePreparedStatement增加了新的Api.OraclePreparedStatement.setStringForClob(),这个方法没有OraclePreparedStatement.setString()这个方法的32765的长度限制。正如你想象的一样,OraclePreparedStatement.getString(),这个方法照旧,还是一样可以从CLOB字段取得
3、完整的内容。C、示例程序方法一:标准的jdbcapi注意,前边提到的setStringForClob方法,在标准的jdbcApi里面是没有,这里需要把一个SetBigStringTryClob属性设置到数据库连接,这样setString()这个方法就会试图用CLOB方式来处setString.a、准备数据库CREATETABLEclob_tab(clob_colCLOB);b、创建数据库连接importjava.sql.Connection;importjava.sql.DriverManager;importor
4、acle.jdbc.OracleDriver;importjava.util.Properties;..........//定义数据库连接变量Stringurl="jdbc:oracle:thin:@localhost:1521:orcl";Stringuser="scott";Stringpassword="tiger";//准备创建数据库连接的属性Propertiesprops=newProperties();props.put("user",user);props.put("password",passwor
5、d);props.put("SetBigStringTryClob","true");//注意,这是有必要的//加载数据库驱动DriverManager.registerDriver(newOracleDriver());//获得数据库连接Connectionconn=DriverManager.getConnection(this.url,this.props);c、小试:PreparedStatementpstmt=conn.prepareStatement("INSERTINTOclob_tabVALUES(
6、?)");//读入大文本Stringstr=this.readFile("bigFile.txt");//用setString方法来把大文本写入Clob字段//要确保在SetBigStringTryClob属性已经设置pstmt.setString(1,str);pstmt.executeUpdate();方法二:非jdbc标准,Oracleapi方式importjava.sql.*;importjava.io.*;importjava.util.*;importoracle.jdbc.*;importoracle
7、.jdbc.pool.*;..........//sqlStringsql="INSERTINTOclob_tabVALUES(?)";//读入大文本(大于32765字节).//readFile()只是一个方法用来读取文本,返回字符串Stringstr=this.readFile("bigFile.txt");//新建OraclePreparedStatement,注意比较这里opstmt=(OraclePreparedStatement)conn.prepareStatement(sql);//调用setStri
8、ngForClob方法来写入Clobopstmt.setStringForClob(1,str);//执行opstmt.executeUpdate();...........D、用getString()读取ClobResultSet.getString()方法并没有32765字节的限制,以下就是读取CLOB字段的方法.....PreparedStatemen
此文档下载收益归作者所有