CSDN博客

img waspli

用jsp对oracle的clob字段进行操作

发表于2004/7/17 10:32:00  2129人阅读

分类: JSP

CLOB一般用来存放超大广西,如果是2进制文件一般用BLOB.
假设col2CLOB:
写操作:

String sql = "insert into tb_commendtemp (col1,col2) values('111',?)";
string s = "
长文本";
StringBufferInputStream sbin = new StringBufferInputStream(s);
PreparedStatement ps = query.getPreStmt(sql);
ps.setAsciiStream(1,sbin,s.length());
int i = ps.executeUpdate();
ps.close();
sbin.close();
if(i>0) ok;
如果是二进制文件就用FileInputStream写进去

读的时候只要
rs.getAsciiStream();
rs.getUnicodeStream();
rs.getBinaryStream();
看它们的名字就知道是得到什么类型的的数据流了.

如果存放的是二进制文件,比如图形,执行文件,压缩文件最好还是blob保险.
写和读也要用二进制流,
DataInputStrean
DatOutputStream.有时用UNICODE的字符流也能行,
不保险.如果是文本,ClobLONG都行.读和写用
BuffreedReader
PrintWriter更方便.



blob:
二进制,如果exe,zip
clob:
单字节码,比如一般的文本文件.
nlob:
多字节码,UTF格式的文件.

如果带格式的文件如果WORD,EXECL等如果要保持格式不被破坏,最好以BLOB
方式,它近似于以byte的原始方式存放,缺点当然是操作时效率低().

操作CLOB,别的可以看我上面的写和读的例子,只要注意把
pstmt.setBinaryStream()改成rs.setAsciiStream();
pstmt.getBinaryStream()改成rs.getBinaryStream();

在从文件读成流的时候用Reader而不要用DataInuputStream

0 0

相关博文

我的热门文章

img
取 消
img