`

java在oracle数据库中如何插入读取CLOB值??

    博客分类:
  • SQL
阅读更多
java在oracle数据库中如何插入读取CLOB值??

在oracle数据库中如何插入CLOB值 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();

}

}

分享到:
评论

相关推荐

    读取oracle数据库中clob字段的值

    ### 读取Oracle数据库中CLOB字段的值 在处理Oracle数据库时,经常会遇到需要读取CLOB(Character Large Object)类型字段的情况。CLOB主要用于存储大量的文本数据,如文章、文档等内容。由于CLOB类型的数据量可能...

    java读取oracle数据库中clob字段.txt

    java读取oracle数据库中clob字段 把oracle数据库中字段类型为clob的字段值以字符串的形式读取出来

    数据库读取clob字段

    ### 数据库读取CLOB字段 #### 概述 在Oracle数据库中,CLOB(Character Large Object)是一种用于存储大量文本数据的数据类型。CLOB能够容纳4GB的文本信息,适用于存储如文章、报告或者XML文档等大型文本数据。...

    运用Java如何存取Oracle中的CLOB类型字段

    在IT领域,尤其是在数据库操作与Java编程的交集部分,理解和掌握如何在Java中存取Oracle数据库中的CLOB(Character Large Object)类型字段是至关重要的技能。CLOB数据类型主要用于存储大量的文本信息,如文章、报告...

    java存储oracle中的clob类型

    从Oracle数据库读取中文数据后,需要将其转换回Java能够识别的编码格式,如GB2312或UTF-8。 **示例代码:** ```java String encoded = resultSet.getString("content"); String decoded = ECov.asc2gb(encoded); //...

    图片存入Oracle中,用clob和blob两种方式

    - **准备环境**:首先确保已经安装了Oracle数据库客户端和相应的驱动程序,例如JDBC驱动,以便通过编程语言(如Java、Python等)与数据库交互。 - **连接数据库**:使用相应的连接字符串、用户名和密码建立与...

    java中操作oracle的CLOB字段精解

    Java 中操作 Oracle 的 CLOB 字段是一种常见的操作,在实际开发中,我们经常需要在 Oracle 数据库中存储和读取大型文本数据,这时就需要使用 CLOB(Character Large OBject)类型的字段来存储这些数据。下面我们将...

    java读写oracle clob字段

    本教程将介绍如何使用Java来读取和写入Oracle数据库中的CLOB字段。 首先,我们需要引入相关的Java和Oracle JDBC驱动库。在上述代码中,我们看到`import oracle.jdbc.driver.OracleDriver;`,这表示我们将使用Oracle...

    java中xml文件的处理及oracle中xmltype的插入和读取.pdf

    在本文中,我们将详细介绍 Java 中 XML 文件的处理及 Oracle 中 XMLType 的插入和读取。 一、Oracle 中创建表 在 Oracle 数据库中,创建表用于存储 XML 数据。我们可以使用以下 SQL 语句创建一个名为 `resumes2` ...

    oracle数据库的clob大字段在jdbc中的处理方式

    在Java中,当我们需要通过JDBC(Java Database Connectivity)接口与Oracle数据库交互时,处理CLOB字段可能会遇到一些挑战。这篇文档将详细阐述如何在JDBC中有效地读取和操作Oracle数据库的CLOB字段,并将其转换为...

    利用Java程序实现Oracle数据库中大对象的存取.pdf

    在Java程序中,可以使用jdbc驱动程序来连接Oracle数据库,并使用PreparedStatement对象来执行SQL语句,实现对大对象的存储和读取。例如: ``` Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@...

    jdbc 处理clob类型字段

    本主题主要探讨如何使用JDBC有效地操作Oracle数据库中的CLOB类型字段,包括插入(Insert)、删除(Delete)、更新(Update)和查询(Select)等操作。 首先,我们需要理解CLOB的基本概念。CLOB是一种数据库对象,...

    clob-blob.rar_blob and clob_clob_java CLOB_java oracle cl_oracle

    在Oracle数据库中,CLOB(Character Large Object)和BLOB(Binary Large Object)是用来存储大量文本数据和二进制数据的特殊数据类型。CLOB用于存储大文本数据,如长篇文章或XML文档,而BLOB则用于存储图像、音频、...

    Oracle导出Clob,Blob工具

    在描述中提到的“Oracle导出Clob,Blob等大字段工具”就是为了解决这个问题而设计的,它是一个自编写的实用程序,方便用户导出和管理Oracle数据库中的大对象数据。 Oracle数据库中的Clob类型用于存储大量的文本数据...

    JAVA对clob的操作

    在JAVA中,操作Oracle数据库中的BLOB和CLOB类型字段是一种常见的需求。然而,网络上关于JAVA对Oracle中BLOB、CLOB类型字段的操作说明往往不够全面、不够准确,甚至有的简直就是胡说八道。因此,本文旨在总结JAVA对...

    java将图片写入数据库,并读出来(blob clob)

    在Java编程中,有时我们需要将图像数据存储到数据库中,然后能够从数据库中读取出来。这个过程通常涉及到Blob和Clob数据类型,它们是Java中的两种特殊对象,用于存储大对象(LOB)。Blob用于存储二进制数据,如图片...

    weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB 类型转换解决办法

    在使用 WebLogic 服务器进行应用程序开发时,尤其是在处理 Oracle 数据库中的 CLOB 类型数据时,开发者可能会遇到类型转换的问题。本文将详细介绍如何通过反射机制来解决 WebLogic 环境下 Oracle CLOB 类型转换成 `...

    java解析emoji表情存入oracle,并正常使用

    至于`代码片段.txt`,很可能包含了一个示例代码,演示了如何在Java中解析emoji并存入Oracle数据库。通常,这样的代码会包含以下步骤: 1. 使用`emoji-java`库解析输入字符串中的emoji。 2. 将emoji转换为UTF-16代理...

Global site tag (gtag.js) - Google Analytics