`

读取oracle中Bob字段,保存到本地

阅读更多
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class TestRead
{
   
    /**
     * @param args
     */
    public static void main(String[] args)
    {
        Connection conection = null;
        ResultSet rs = null;
        Statement st = null;
        InputStream inputStream = null;
       
        try
        {
            Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
            String url = "jdbc:oracle:thin:@localhost:1521:mydb";
            // mydb为数据库的SID
            String user = "gy";
            String password = "guozi123";
            conection = DriverManager.getConnection(url, user, password);
            String sql = "select * from TESTBLOB";
            st = conection.createStatement();
            rs = st.executeQuery(sql);
           
            while (rs.next())
            {
                java.sql.Blob blob = rs.getBlob("data");// 读取Blog字段
                inputStream = blob.getBinaryStream();// 获得字节流               
              
                FileOutputStream file = new FileOutputStream("c://test//"
                        + rs.getString("name"));
                byte[] b = new byte[1024];
                int i = 0;
                while ((i = inputStream.read(b)) > 0)
                {
                    file.write(b, 0, i);                   
                }
               
                file.close();
            }
           
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
        finally
        {
            try
            {
                if (rs != null) rs.close();
                if (st != null) st.close();
                if (conection != null) conection.close();
            }
            catch (SQLException e)
            {
                e.printStackTrace();
            }
            if (inputStream != null)
            {
                try
                {
                    inputStream.close();
                }
                catch (IOException e)
                {
                    e.printStackTrace();
                }
                inputStream = null;
            }
           
        }
    }
   
}
分享到:
评论

相关推荐

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

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

    java中读取ORACLE中BLOB字段存储的图片

    ### Java中读取Oracle数据库BLOB字段存储的图片方法详解 #### 一、背景与目的 在实际的应用开发过程中,经常会有将图片等二进制数据存入数据库的需求。Oracle数据库支持通过BLOB(Binary Large Object)类型来存储...

    oracle中读取blob字段.doc

    ### Oracle中BLOB字段的读取与操作 #### 一、引言 在数据库系统中,BLOB(Binary Large Object)是一种用于存储大量二进制数据的数据类型,例如图像、音频或视频文件等。在Oracle数据库中,BLOB类型特别适用于处理...

    sql server中的image类型的数据导出到oracle的clob字段中

    我们使用了 Java 语言和 JDBC 驱动程序来实现数据的导出,并将 Image 类型数据写到文件中,然后将文件中的数据读取出来,并将其设置到 Oracle 的 CLOB 字段中。这种方法可以帮助我们实现不同数据库管理系统之间的...

    使用JAVA读取ORACLE_BLOB字段实现上传下载.doc

    使用 JAVA 读取 ORACLE BLOB 字段实现上传下载需要完成以下几个步骤:上传大对象、将大对象存储在数据库中、使用专门的函数来完成 BLOB 的使用。在 Struts 项目中,我们可以使用 Struts 的文件上传组件来上传大对象...

    Oracle 超大文件的保存和读取

    在Oracle数据库存储超大文件时、以流的方式分段读取和保存,避免内存溢出。本工具类提供两个方法: 1、读取文件保存到Oracle数据库Blob字段(支持超大文件) 2、从数据库中读出大字段到文件中(分块读取)

    ORACLE中CLOB字段转String类型

    本文将详细介绍如何在Oracle中实现CLOB字段到字符串类型的转换,并探讨其中的关键技术和注意事项。 #### 一、CLOB概述 1. **定义**: - `CLOB`是Oracle数据库提供的一种特殊的数据类型,用于存储大文本数据。 - ...

    kettle通过java代码将数据库blob 字段抽取到本地文件

    kettle通过java代码将数据库blob 字段抽取到本地文件

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

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

    Struts用JDBC的Blob字段保存和读取Oracle数据库

    本文将详细介绍如何使用Struts结合JDBC操作Oracle数据库中的Blob字段实现文件的保存和读取。 #### 代码分析 根据提供的部分代码示例,我们可以将其分为两个主要部分:文件保存和文件读取。 ##### 文件保存 文件...

    Java读取数据库中blob字段并插入到另一个表中

    可以从数据库中读取blob字段并插入到另一个表中,已经测试通过

    在VC6中使用ADO读取Oracle中的BLOB字段

    ### 在VC6中使用ADO读取Oracle中的BLOB字段 #### 概述 在软件开发过程中,经常需要处理数据库中的二进制大对象(BLOB)字段,如图像、音频或视频文件等。本文将详细介绍如何在Visual C++ 6.0(VC6)环境下使用...

    批量导出ORACLE数据库BLOB字段生成文件

    以下是一个示例PL/SQL代码段,用于遍历`photos`表,读取BLOB数据,并将其保存为本地文件: ```sql DECLARE v_blob BLOB; v_filename VARCHAR2(255); v_file UTL_FILE.FILE_TYPE; BEGIN FOR r IN (SELECT ...

    深入浅析mybatis oracle BLOB类型字段保存与读取

    本篇文章将深入剖析如何使用MyBatis框架在Oracle数据库中对BLOB类型字段进行保存和读取。 首先,BLOB字段设计用于存储非结构化的二进制大数据,如图像、音频文件或任何其他形式的字节流。相反,CLOB字段则适用于...

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

    Java 中 XML 文件的处理及 Oracle 中 XMLType 的插入和读取 Java 中 XML 文件的处理是指在 Java 应用程序中处理和操作 XML 文件的过程。在 Oracle 数据库中,XMLType 是一种特殊的数据类型,用于存储和处理 XML ...

    基于JSP访问ORACLE数据库BLOB字段并显示图形的解决方案.pdf

    该方案使用JSP技术读取ORACLE数据库中的BLOB字段存储的坐标点,然后将坐标传递到JAVA类中显示图形。在图形的正中还显示了编号,充分展示了JSP结合JAVA应用的优势。 知识点1:JSP技术的应用 * JSP(Java Server ...

    oracle blob 字段 读写 delphi

    - 在插入或更新操作中,首先将二进制数据保存到一个TMemoryStream或TBytes数组中。 - 对于DBExpress,将TOracleBlobField绑定到内存流,然后执行SQL命令。 - 对于ADO,使用TADOBlobField的LoadFromStream或...

    C#访问oracle数据库类,带blob字段读写

    // 这里可以对imageData进行处理,如保存到文件 } } // 写入Blob字段 byte[] imageBytes = File.ReadAllBytes("path_to_your_image.jpg"); OracleParameter blobParam = new OracleParameter("ImageBlob", ...

    java读取sqlserver image字段.docx

    一旦从数据库中读取到了二进制数据,接下来的任务就是将这些数据写入到本地文件系统中。这通常涉及到创建一个输出流 (`OutputStream`),并将读取到的数据逐字节地写入到文件中。 **代码示例**: ```java ...

Global site tag (gtag.js) - Google Analytics