第三章資料庫中的圖片
第一節處理BLOBs,在access中儲存圖片
現在開發資料庫應用程式不僅僅只需要處理文字或數位資料。例如,如果你正在開發基於Interner/Intranet或基於多媒體的應用程序,和資料庫中的文字一樣,資料庫中的圖片就必須頻繁的顯示。
在本教學的第三章,我們將了解如何透過ADO取出並顯示Access資料庫中的圖形資料(影像)。不要擔心處理Access資料庫中的影像所需的資料庫程式設計技巧會比本教程到現在為止所提供的更多。讓我們假設比已得到的我們已知道更多。
如果你從本教學的開始部分學起(尤其是第二章),你就會知道怎麼連接資料庫並在DBGrid中顯示applications表(來自我們的aboutdelphi.mdb資料庫)。記住,我們需要三個資料元件:DBGrid、ADOTable和DataSource來取得和顯示Applications資料表的資料。
回到第一章我們建立資料庫的時候,在Applications表的最後一個欄位我們留為空(其他欄位我們填上了啞元資料)。最後欄位的欄位名為Picture,類型為OLE物件類型。
如果你右滾到DBGrid的最後一列,你將會看到如圖的情況:
使用MS Access時,我們可以在OLE物件類型的欄位中儲存影像(和其他大數據對象,如聲音或錄影)。這種類型的資料被視為Binary Large Object Bitmap (BLOB)大二進位物件位圖。
當然在處理圖像時,幾種類型的圖片格式是可利用的。最常用的包括JPEG、GIF和BMP。其中JPEG已被網頁設計者廣泛接受,因為其所需的資料儲存量很小(換句話說,JPEGs的資料量比BMPs要小)。
當然,Delphi有處理BMP、GIF和JPEG圖形格式的方法。本章接下來的部分將處理JPEG檔案格式。
在Access中儲存圖片(Storing pictures in Access)
在討論在Delphi表單中顯示資料庫表中的圖像以前,我們需要在資料庫中增加一些圖形資料。
運行Access,開啟aboutdelphi.mdb庫。開啟Applications表(它應有一行資料)並選擇Picture(圖片)欄位。
依照下面的步驟增加影像:
1、選擇Insert(插入) | Object(物件)...將顯示一個Insert Object(插入物件)對話方塊。