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