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"
};