`
0kd07
  • 浏览: 20146 次
  • 性别: Icon_minigender_1
  • 来自: 廊坊
社区版块
存档分类
最新评论

oracle中CLOB类型的存取

阅读更多
当oracle数据库中某个字段的长度不较大的时候,用clob类型。
在向带有Lob类型的字段加入数据时,使用EMPTY_CLOB()初始化CLOB字段,然后再使用输出流向字段中写数据(这些数据往往都是字节流量相对较大的). 如果是直接在oracle客户端向表中写数据,就不用这么麻烦了.

好了,具体的操作:

CREATE TABLE article(  
    subject VARCHAR2(50 char),  
    content CLOB ,  
    tstamp TIMESTAMP DEFAULT SYSDATE   
);  
 
--使用EMPTY_CLOB()来初始化CLOB字段  
String strSql = "INSERT INTO article(subject,content) VALUES('文章标题:Empty_clob()的使用方法',EMPTY_CLOB())";  
Connection conn = db.getConnection();  
conn.setAutoCommit(false);  
 
PreparedStatement ptmt = conn.prepareStatement(sqlBuffer.toString());  
ptmt.executeUpdate();  
strSql = "select content from article where subject = "+subject+" for update ";  
ResultSet rs = ptmt.executeQuery(strSql);  
if (rs.next()) {  
        /**//* 取出此CLOB对象 */ 
        oracle.sql.CLOB clob = null;  
        clob = (oracle.sql.CLOB) rs.getClob("content");  
        /**//* 向CLOB对象中写入数据 */ 
        BufferedWriter out = new BufferedWriter(clob.getCharacterOutputStream());  
        out.write(content);  
        out.close();  
        out = null;  
        conn.commit();  

CREATE TABLE article(
    subject VARCHAR2(50 char),
    content CLOB ,
    tstamp TIMESTAMP DEFAULT SYSDATE
);

--使用EMPTY_CLOB()来初始化CLOB字段
String strSql = "INSERT INTO article(subject,content) VALUES('文章标题:Empty_clob()的使用方法',EMPTY_CLOB())";
Connection conn = db.getConnection();
conn.setAutoCommit(false);

PreparedStatement ptmt = conn.prepareStatement(sqlBuffer.toString());
ptmt.executeUpdate();
strSql = "select content from article where subject = "+subject+" for update ";
ResultSet rs = ptmt.executeQuery(strSql);
if (rs.next()) {
        /**//* 取出此CLOB对象 */
        oracle.sql.CLOB clob = null;
        clob = (oracle.sql.CLOB) rs.getClob("content");
        /**//* 向CLOB对象中写入数据 */
        BufferedWriter out = new BufferedWriter(clob.getCharacterOutputStream());
        out.write(content);
        out.close();
        out = null;
        conn.commit();
}

分享到:
评论

相关推荐

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

    ### 运用Java如何存取Oracle中的CLOB类型字段 #### 概述 在数据库操作中,经常会遇到处理大量文本数据的需求,例如存储文章、新闻、文档等。Oracle数据库提供了CLOB(Character Large Object)类型来存储大容量的...

    hibernate存取oracle的clob

    这里需要注意的是,`Clob` 类型在 Java 中表示为 `java.sql.Clob`,而在 Oracle 中则使用 `oracle.sql.CLOB`。 #### 3. 存储 CLOB 数据 接下来介绍如何通过 Hibernate 将 CLOB 数据保存到 Oracle 数据库中。 **...

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

    在数据库管理中,存储非结构化数据如图片、音频或视频文件时,通常会使用`CLOB`(Character Large Object)和`BLOB`(Binary Large Object)这两种数据类型。Oracle数据库系统支持这两种数据类型,用于存储大量文本...

    Oracle,Clob,Blob数据存取的Java代码

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

    spring+hibernate操作oracle的clob字段

    在J2EE开发中,处理大数据对象(如大文本或二进制数据)时,Oracle数据库的CLOB字段常被用来存储超过4000字节的信息。Spring和Hibernate框架结合使用可以有效地进行CLOB字段的操作。以下是实现这一功能的关键步骤和...

    DELPHI的CLOB和BLOB存取处理.zip_DELPHI的CLOB和BLOB存取处理_hallzgz

    本篇文章将深入探讨DELPHI中如何有效地进行CLOB和BLOB的存取处理。 CLOB主要用来存储大文本数据,如长篇文章、XML文档或JSON字符串,而BLOB则用于存储大量的二进制数据,如图像、音频、视频文件或者任何非文本的...

    java存取oracle中的COLB类型数据.pdf

    Java 存取 Oracle 中的 CLOB 类型数据 Java 存取 Oracle 中的 CLOB 类型数据是 Java 开发中的一项重要任务。CLOB(Character Large OBject)是一种大型字符对象,用于存储大型文本数据,最大可存储 4GB 数据。在 ...

    clob-blob.rar_blob and clob_clob_java CLOB_java oracle cl_oracle

    对于CLOB和BLOB字段,Oracle JDBC驱动提供了`oracle.jdbc.driver.OracleClob`和`oracle.jdbc.driver.OracleBlob`类,它们实现了Java的标准接口`java.sql.Clob`和`java.sql.Blob`。这两个接口提供了读取和写入大数据...

    java存取oracle中的COLB类型数据.docx

    Java 访问 Oracle 中的 CLOB 类型数据 Java 访问 Oracle 中的 CLOB(Character Large OBject)类型数据是一种常见的数据库操作。CLOB 类型数据可以存储大文本数据,最大可达 4GB。Java 提供的 sql.Clob 类与之对应...

    PHP处理Oracle的CLOB实例

    在PHP编程中,当需要与...在处理Oracle数据库中的CLOB字段时,了解这些细节至关重要,以确保数据能够正确、高效地进行存取。熟悉PDO的用法以及对CLOB类型的特殊处理,可以帮助开发者编写出更加健壮和高效的PHP代码。

    ORACLE中LONG类型字段的存取[文].pdf

    在Oracle数据库中,LONG类型是一种...总之,Oracle中的LONG类型字段是用来存储大文本数据的,但随着数据库技术的发展,更现代的替代方案如CLOB已变得更为常见。在实际应用中,应根据需求和性能考虑选择合适的数据类型。

    Java存取OracleBlob字段,图片存储,Blob和BLOB的问题,Clob,oracle.docx

    ### Java存取Oracle Blob 字段详解 #### 一、Blob 和 BLOB 的区别 在处理 Oracle 数据库中的二进制大型对象(Binary Large Object,简称 Blob)时,开发者经常会遇到两个相似但不同的概念:`java.sql.Blob` 和 `...

    Hibernate存储Clob字段的方式总结

    4. 在Hibernate的配置文件中添加"hibernate.connection.SetBigStringTryClob"属性,这对于Oracle数据库是必须的,以确保可以将大字符串存储为Clob类型。 5. 进行存取测试以验证配置的有效性。 传统存储方式则是将...

    Oracle数据库图像存取技术.pdf

    在Oracle数据库中,lob类型数据的存储有其特殊性,它并不和其他数据存储在同一个表中,而是可以存放在不同的表空间中,并通过一个定位符指向实际的数据。从Oracle 7开始,long或longraw字段的存储限制为2GB,而lob...

    Oracle 插入超4000字节的CLOB字段的处理方法

    OracleClob clob = new OracleClob((OracleConnection)m_objConn); OracleParameter param = new OracleParameter('clob', OracleDbType.Clob, clob, ParameterDirection.Input); param.Value = "超过4000字符的超常...

    ORACLE InterMedia多媒体数据存取技术与应用.pdf

    Oracle InterMedia是Oracle数据库系统中用于管理和存取多媒体数据的一项技术,主要应用于处理非结构化的数据,如图像、音频、视频等。这项技术在Oracle 9i版本中得到强化,旨在提供一种统一的方式来管理和访问结构化...

Global site tag (gtag.js) - Google Analytics