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(Character Large Object)类型字段的情况。CLOB主要用于存储大量的文本数据,如文章、文档等内容。由于CLOB类型的数据量可能...
### Java中读取Oracle数据库BLOB字段存储的图片方法详解 #### 一、背景与目的 在实际的应用开发过程中,经常会有将图片等二进制数据存入数据库的需求。Oracle数据库支持通过BLOB(Binary Large Object)类型来存储...
### Oracle中BLOB字段的读取与操作 #### 一、引言 在数据库系统中,BLOB(Binary Large Object)是一种用于存储大量二进制数据的数据类型,例如图像、音频或视频文件等。在Oracle数据库中,BLOB类型特别适用于处理...
我们使用了 Java 语言和 JDBC 驱动程序来实现数据的导出,并将 Image 类型数据写到文件中,然后将文件中的数据读取出来,并将其设置到 Oracle 的 CLOB 字段中。这种方法可以帮助我们实现不同数据库管理系统之间的...
使用 JAVA 读取 ORACLE BLOB 字段实现上传下载需要完成以下几个步骤:上传大对象、将大对象存储在数据库中、使用专门的函数来完成 BLOB 的使用。在 Struts 项目中,我们可以使用 Struts 的文件上传组件来上传大对象...
在Oracle数据库存储超大文件时、以流的方式分段读取和保存,避免内存溢出。本工具类提供两个方法: 1、读取文件保存到Oracle数据库Blob字段(支持超大文件) 2、从数据库中读出大字段到文件中(分块读取)
本文将详细介绍如何在Oracle中实现CLOB字段到字符串类型的转换,并探讨其中的关键技术和注意事项。 #### 一、CLOB概述 1. **定义**: - `CLOB`是Oracle数据库提供的一种特殊的数据类型,用于存储大文本数据。 - ...
kettle通过java代码将数据库blob 字段抽取到本地文件
java读取oracle数据库中clob字段 把oracle数据库中字段类型为clob的字段值以字符串的形式读取出来
本文将详细介绍如何使用Struts结合JDBC操作Oracle数据库中的Blob字段实现文件的保存和读取。 #### 代码分析 根据提供的部分代码示例,我们可以将其分为两个主要部分:文件保存和文件读取。 ##### 文件保存 文件...
可以从数据库中读取blob字段并插入到另一个表中,已经测试通过
### 在VC6中使用ADO读取Oracle中的BLOB字段 #### 概述 在软件开发过程中,经常需要处理数据库中的二进制大对象(BLOB)字段,如图像、音频或视频文件等。本文将详细介绍如何在Visual C++ 6.0(VC6)环境下使用...
以下是一个示例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类型字段进行保存和读取。 首先,BLOB字段设计用于存储非结构化的二进制大数据,如图像、音频文件或任何其他形式的字节流。相反,CLOB字段则适用于...
Java 中 XML 文件的处理及 Oracle 中 XMLType 的插入和读取 Java 中 XML 文件的处理是指在 Java 应用程序中处理和操作 XML 文件的过程。在 Oracle 数据库中,XMLType 是一种特殊的数据类型,用于存储和处理 XML ...
该方案使用JSP技术读取ORACLE数据库中的BLOB字段存储的坐标点,然后将坐标传递到JAVA类中显示图形。在图形的正中还显示了编号,充分展示了JSP结合JAVA应用的优势。 知识点1:JSP技术的应用 * JSP(Java Server ...
- 在插入或更新操作中,首先将二进制数据保存到一个TMemoryStream或TBytes数组中。 - 对于DBExpress,将TOracleBlobField绑定到内存流,然后执行SQL命令。 - 对于ADO,使用TADOBlobField的LoadFromStream或...
// 这里可以对imageData进行处理,如保存到文件 } } // 写入Blob字段 byte[] imageBytes = File.ReadAllBytes("path_to_your_image.jpg"); OracleParameter blobParam = new OracleParameter("ImageBlob", ...
一旦从数据库中读取到了二进制数据,接下来的任务就是将这些数据写入到本地文件系统中。这通常涉及到创建一个输出流 (`OutputStream`),并将读取到的数据逐字节地写入到文件中。 **代码示例**: ```java ...