如何在oracle的blob字段里保存多个文件

Oracle的BLOB字段类型可以用来保存长2进制数据。但是通常读写BLOB字段数据的代码都是很罗嗦,非细心编码很容易出错。我把这个功能集成到我的OCI包装库(ORADBI)中。下面的例子就是演示如何使用ORADBI把多个文件按保存到一个字段里。

我在另外的例子中将演示如何把BLOB字段中的数据还原为文件。

整个ORADBI是我在OCI基础上写的C语言API。从创作这个API到一直不断的更新维护,已经有1年多了。我也将一直维护下去,不断完善和添加新的功能。ORADBI是完全免费和完全开源的,使用者只要不声明为其版权所有,可以用它做任何事情。

这是个直接利用OCI操作BLOB的例子。我相信,这是你能找到的最快捷的方法。

1)首先保证你的机器上可以使用Oracle9i或10g的客户端。Oracle10g只需要安装Windows即时客户端。

2)下载我编写的ORADBI库。我提供了完整的库代码和例子程序。

http://download.csdn.net/source/589896

3)定义你要保存的文件路径,如:

const char* arrLobFiles[] = {

"E:\eBookLib-计算机\C&C++\APress.Cryptography in C and C++_SourceCode.rar",

"E:\eBookLib-计算机\C&C++\Charles.River.Media.Algorithms.For.Compiler.Design.eBook-LiB.chm",

"E:\eBookLib-计算机\C&C++\C与C++中的异常处理.pdf",

"E:\eBookLib-计算机\C&C++\The art of assmebly language.pdf",

"E:\eBookLib-计算机\C&C++\Jones.And.Bartlett.Publishers.Foundations.Of.Algorithms.Using.Cpp.Pseudocode.3rd.Edition.eBook-Li.chm",

"E:\eBookLib-计算机\C&C++\The C++ Standard Library.pdf",

"E:\eBookLib-计算机\C&C++\GCC--CompleteReference.pdf",

"E:\eBookLib-计算机\C&C++\VC技术内幕第五版.chm",

"E:\eBookLib-计算机\Network&Tcpip\ALTHOS.Introduction.To.Data.Networks.PDN.LAN.MAN.WAN.and.Wireless.Data.Technologies.and.Systems.e.chm",

"E:\eBookLib-计算机\Network&Tcpip\Digital Satellite Communications 2nd Ed - book.pdf",

"E:\eBookLib-计算机\Network&Tcpip\McGraw.Hill.Storage.Networks.The.Complete.Reference.chm",

"E:\eBookLib-计算机\Network&Tcpip\UNIX Network Programming Volume 1_3rd Edition-The Sockets Networking API.chm"

};

时间: 2024-08-30 14:57:10

如何在oracle的blob字段里保存多个文件的相关文章

如何读取Oracle的BLOB字段里的文件

使用ORADBI读取存储在BLOB字段里的多个文件,并还原到指定的路径下. 下面是完整的代码: // // read_blobfile.c - 读BLOBFILE的例子 // cheungmine@gmail.com// // 内存泄漏检测 // 在需要检测的地方放置语句: // _CrtDumpMemoryLeaks(); // 以下3句的次序不能改变 #define _CRTDBG_MAP_ALLOC #include<stdlib.h> #include<crtdbg.h>

VB.Net在向ORACLE存储BLOb字段时,系统内存占用很大如何分块存储

问题描述 我使用的是VS2003的VB.Net在向ORACLE存储BLOb字段时,系统内存占用很大有100多兆,我存储的文件大小为30M,代码如下:那位高手能否知道如果分块存储(每次存储10240个字节,然后循环存储)的话内存就是马上降下来,请高手指点PublicSubinsertBidDoc(ByValvTmpFileAsString,ByValvPrjNoAsString,ByValvSprNoAsString,ByValvSprNameAsString)DimoCnOraAsNewOrac

h2数据库文件写入oracle的blob字段,再从blob字段读取出来,重新生成h2.db文件

问题描述 h2数据库h2.db文件写入oracle的blob字段,再从blob字段读取出来,重新生成h2.db文件之后,用jdbc访问这个重新生成h2.db文件,会报表不存在的错误,无法操作h2. 请问大概是什么原因? 解决方案 你可以按以下依次排查:1.h2.db数据库文件本身是否完整?2.存入oracle是以二进制的数据存进去的,存入取出之间对数据文件是否有完整.像你这样可以完整报表不存在的错误,我觉得跟数据库存储是没有关系的.

在JDBC中,setBinaryStream()方法给oracle的BLOB字段插值时报错

问题描述 报错:仅能绑定要插入LONG列的LONG值我是通过JDBC的方式从Oracle获取表数据,并通过WebService方式传输,然后别的应用获取后,插入到别的数据库.从Oracle获取BLOB字段时是通过getBinaryStream()获取的,传输后,在另外的应用中冶获得了该值,但通过setBinaryStram()插入时,如果获取的BLOB字段的内容太大(我存放的是图片),则会报上述错误,如果内容不大,则可以成功插入.ps:试过setByte()方式插入,但也包上述错误.与setBi

java读写oracle的blob字段示例_java

复制代码 代码如下: package com.wanmei.meishu; import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.FileReader;import java.io.InputStream;import java.io.OutputStream;import java.sql.Connection;import java.sql.DriverManager;import java

java读取图像文件存入oracle中blob字段源代码

数据库:oracle 10G XE 数据源驱动:jdbc12.jar 文件名:WriteBlob 数据库中建立一个为clobtest的表,内有两个字段,name (varchar2(20)),content(blob). 1package dbdriver; 2 3/** *//** 4 * 2008-09-28 5 * @author duduli 6 * email: lxyzj2000@gmail.com 7 */ 8import java.sql.*; 9import java.io.*

在C#中如何向Oracle 中 BLOB 字段 插入数据

问题描述 在winform程序中(C#语言),需要将一张图片存入数据库中,Oracle中字段类型为BLOB,请问哪位大侠做过,给个示例,谢谢!QQ:36519258E-mail:dongwei_sy@163.com急用,不胜感激! 解决方案 解决方案二:DimstrConnAsStringDimobjConnAsOracleConnectionDimobjCommAsOracleCommandPrivateSubForm1_Load(ByValsenderAsSystem.Object,ByVa

如何保存word文档到数据库Blob字段,,急,急,急啊

问题描述 Eclipse中使用NTKO文档控件,怎么把一个word文档保存到Oracle数据库Blob字段呢? 解决方案 解决方案二:跪求NTKO文档空件如何保存到数据库啊?

通过JDBC操纵Oracle数据库LOB字段的几种情况分析

oracle|数据|数据库 通过JDBC操纵Oracle数据库LOB字段的几种情况分析纵横软件制作中心 雨亦奇2003-6-10 15:14:19在Oracle中,LOB(Large Object,大型对象)类型的字段现在用得越来越多了.因为这种类型的字段,容量大(最多能容纳4GB的数据),且一个表中可以有多个这种类型的字段,很灵活,适用于数据量非常大的业务领域(如图象.档案等).而LONG.LONG RAW等类型的字段,虽然存储容量也不小(可达2GB),但由于一个表中只能有一个这样类型的字段的