在oracle数据库中如何插入CLOB值
来源:互联网 发布:淘宝联盟卖家不给佣金 编辑:程序博客网 时间:2024/06/05 16:59
oracle中最常用的varcher2类型最多只能存储4000个字节的内容,一般情况下是能够满足用户的需求的。但是在一些特殊情况下(如要存储图片或者要存储的内容超过了4000个字节),varcher2就满足不了这个需求了。这个时候我们可以借助于oracle里面的大字段CLOB后者BLOB。举例如下:
首先,在数据库中建一张表news,为了简单起见,只有一个字段content(CLOB)。做好准备工作后就可以开始我们的CLOB之旅了。
以下是插入CLOB的代码:
import java.sql.*;
import java.io.*;
public class TestClob{
public void TestClob(){}
public static void main(String args[]){
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connectionconn=DriverManager.getConnection ("jdbc:oracle:thin:@localhost:1521:ora32","tjpt","tjpt");
conn.setAutoCommit(false);
//第一步:插入一个空的CLOB
String sql1="insert into news(content,id) values (EMPTY_CLOB(),'1')";
PreparedStatement ps1=conn.prepareStatement(sql1);
ps1.executeUpdate();
ps1.close();
//第二步:取出该CLOB
String sql2="select content from news for update";
PreparedStatement ps2=conn.prepareStatement(sql2);
ResultSet rs2=ps2.executeQuery();
while (rs2.next()){
oracle.sql.CLOB clob=(oracle.sql.CLOB)rs2.getClob(1);
BufferedWriter out=new BufferedWriter(clob.getCharacterOutputStream());
String content="1234";//假定这是新闻的内容,当然可以也可以是其他的内容
out.write(content,0,content.length());
out.close();
}
conn.commit();
}
catch(Exception e){e.printStackTrace();}
}
}
既然插入进去了,那我们还得要检验一下:插进去的是不是你想插进去的内容?以下就是读取CLOB的代码:
import java.sql.*;
import java.io.*;
public class ReadClob
{
public void ReadClob(){}
public static void main(String args[])
{
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ora32","tjpt","tjpt"); String sql1="select content from news";
PreparedStatement ps1=conn.prepareStatement(sql1);
ResultSet rs1=ps1.executeQuery();
while (rs1.next()){
oracle.sql.CLOB clob=(oracle.sql.CLOB)rs1.getClob(1);
BufferedReader in=new BufferedReader(clob.getCharacterStream());
StringWriter out=new StringWriter();
int c;
while((c=in.read())!=-1)
{
out.write(c);
}
String content=out.toString();
System.out.println (content);//输出CLOB内容
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/CMTobby/archive/2005/07/27/436424.aspx
- 在oracle数据库中如何插入CLOB值
- 在oracle数据库中如何插入CLOB值
- 在oracle数据库中如何插入CLOB值
- java在oracle数据库中如何插入读取CLOB值
- 在oracle中插入CLOB字段
- ORACLE数据库中CLOB数据的插入和快速读取
- 在oracle里插入CLOB的程序
- 向oracle中clob字段插入数据
- java 插入oracle中clob字段
- Oracle中如何插入超4000字节的CLOB字段的处理方法
- oracle数据库中如何插入特殊符号'&'
- oracle数据库中如何插入特殊符号'&' .
- 对于oracle数据库中怎么查看clob类型的值
- 如何在Hibernate当中操作Oracle Clob
- 如何在oracle使用blob,clob
- 如何在Oracle中批量插入数据
- 如何在Oracle表中插入时间
- 如何在Oracle中批量插入数据
- IE中innerhtml无法正常使用
- ORA-06413:连接未打开
- [转]十个免费的Web压力测试工具
- INNO SETUP卸载程序中加入自定义窗体
- while循环+list+each结合使用 php
- 在oracle数据库中如何插入CLOB值
- 网络营销实战密码:策略、技巧、案例——一本只看目录就可以达到目的的书
- Ubuntu Linux中配置Mplayer万能播放器
- poj1411
- 无限增益多路反馈有源滤波器设计
- [Qt]QObject::connect: Cannot queue arguments of type 'QString&'
- 对java list 遍历的三种方式
- 自然语言处理中的模式(模式0:模式无处不在模式)
- pthread_create用法