如何在oracle的blob字段里保存多個(gè)文件
Oracle的BLOB字段類型可以用來保存長2進(jìn)制數(shù)據(jù)。但是通常讀寫B(tài)LOB字段數(shù)據(jù)的代碼都是很羅嗦,非細(xì)心編碼很容易出錯(cuò)。我把這個(gè)功能集成到我的OCI包裝庫(ORADBI)中。下面的例子就是演示如何使用ORADBI把多個(gè)文件按保存到一個(gè)字段里。
我在另外的例子中將演示如何把BLOB字段中的數(shù)據(jù)還原為文件。
整個(gè)ORADBI是我在OCI基礎(chǔ)上寫的C語言API。從創(chuàng)作這個(gè)API到一直不斷的更新維護(hù),已經(jīng)有1年多了。我也將一直維護(hù)下去,不斷完善和添加新的功能。ORADBI是完全免費(fèi)和完全開源的,使用者只要不聲明為其版權(quán)所有,可以用它做任何事情。
這是個(gè)直接利用OCI操作BLOB的例子。我相信,這是你能找到的最快捷的方法。
1)首先保證你的機(jī)器上可以使用Oracle9i或10g的客戶端。Oracle10g只需要安裝Windows即時(shí)客戶端。
2)下載我編寫的ORADBI庫。我提供了完整的庫代碼和例子程序。
http://download.csdn.net/source/589896
3)定義你要保存的文件路徑,如:
const char* arrLobFiles[] = {
"E:\eBookLib-計(jì)算機(jī)\C&C++\APress.Cryptography in C and C++_SourceCode.rar",
"E:\eBookLib-計(jì)算機(jī)\C&C++\Charles.River.Media.Algorithms.For.Compiler.Design.eBook-LiB.chm",
"E:\eBookLib-計(jì)算機(jī)\C&C++\C與C++中的異常處理.pdf",
"E:\eBookLib-計(jì)算機(jī)\C&C++\The art of assmebly language.pdf",
"E:\eBookLib-計(jì)算機(jī)\C&C++\Jones.And.Bartlett.Publishers.Foundations.Of.Algorithms.Using.Cpp.Pseudocode.3rd.Edition.eBook-Li.chm",
"E:\eBookLib-計(jì)算機(jī)\C&C++\The C++ Standard Library.pdf",
"E:\eBookLib-計(jì)算機(jī)\C&C++\GCC--CompleteReference.pdf",
"E:\eBookLib-計(jì)算機(jī)\C&C++\VC技術(shù)內(nèi)幕第五版.chm",
"E:\eBookLib-計(jì)算機(jī)\Network&Tcpip\ALTHOS.Introduction.To.Data.Networks.PDN.LAN.MAN.WAN.and.Wireless.Data.Technologies.and.Systems.e.chm",
"E:\eBookLib-計(jì)算機(jī)\Network&Tcpip\Digital Satellite Communications 2nd Ed - book.pdf",
"E:\eBookLib-計(jì)算機(jī)\Network&Tcpip\McGraw.Hill.Storage.Networks.The.Complete.Reference.chm",
"E:\eBookLib-計(jì)算機(jī)\Network&Tcpip\UNIX Network Programming Volume 1_3rd Edition-The Sockets Networking API.chm"
};
通過上文中的講解相信現(xiàn)在大家對(duì)如何在oracle的blob字段里保存多個(gè)文件的方法有所了解,這樣在以后的工作中遇到類似問題就能夠輕松解決。