|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
你通过从书的数量和开发周期及运行速度来证明:net和ruby要比java简单。
字段范例:blob,clob,nclob
申明:三种年夜型对象(LOB),用来保留较年夜的图形文件或带格局的文本文件,如MiceosoftWord文档,和音频、视频等非文本文件,最年夜长度是4GB。LOB有几品种型,取决于你利用的字节的范例,Oracle8i实其实在地将这些数据存储在数据库外部保留。能够实行我们所操纵的clobtest_table中属性是(字符型id,CLOB型picstr),今朝我们假定一个年夜的字符对象str已包括了我们必要存进picstr字段的数据。并且connection对象conn已创建。以下的例子程序也由于不想占用太多的空间,以是对抛出非常没有写。人人参考一下apidoc。就能够晓得该抛出甚么非常了,此处仅仅告知人人怎样往写。
代码:
(1)对数据库clob型实行拔出操纵
*************************************************
java.sql.PreparedStatementpstmt=;
ResultSetrs=;
Stringquery=;
conn.setAutoCommit(false);
query=insertintoclobtest_table(id,picstr)values(?,empty_clob());
java.sql.PreparedStatementpstmt=conn.prepareStatement(query);
pstmt.setString(1,001);
pstmt.executeUpdate();
pstmt=
query=selectpicstrfromclobtest_tablewhereid=001for
pstmt=con.prepareStatement(query)
rs=pstmt.executeQuery();
oracle.sql.CLOBclobtt=;
if(rs.next()){
clobtt=(oracle.sql.CLOB)rs.getClob(1);
}
Writerwr=clobtt.getCharacterOutputStream();
wr.write(strtmp);
wr.flush();
wr.close();
rs.close();
con.commit();
(2)经由过程sql/plus查询是不是已乐成拔出数据库
*************************************************
PL/SQL的包DBMS_LOB来处置LOB数据。观察方才的拔出是不是乐成。利用DBMS_LOB包的getlength这个procedure来检测是不是已将str存进到picstr字段中了。如:
SQL>selectdbms_lob.getlength(picstr)fromclobtest_table;
(3)对数据库clob型实行读取操纵
*************************************************
读取绝对拔出就很复杂了。基础步骤和一半的取数据库数据没有太年夜的不同。
Stringdescription=
query=selectpicstrfromclobtest_tablewhereid=001;
pstmt=con.prepareStatement(query);
ResultSetresult=pstmt.executeQuery();
if(result.next()){
oracle.jdbc.driver.OracleResultSetors=
(oracle.jdbc.driver.OracleResultSet)result;
oracle.sql.CLOBclobtmp=(oracle.sql.CLOB)ors.getClob(1);
if(clobtmp==||clobtmp.length()==0){
System.out.println(======CLOB对象为空);
description=;
}else{
description=clobtmp.getSubString((long)1,(int)clobtmp.length());
System.out.println(======字符串情势description);
}
}
JAVA是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由升阳(SunMicrosystems)公司的詹姆斯·高斯林(JamesGosling)等人于1990年代初开发。 |
|