在上一講中,講解了資料庫的大概種類和特點,這些和我們VBA的知識離得遠些,我們要用到隻是其中的一點點就可以了。那麼,要想操作資料庫,首先要做的是什麼呢?對了,就是要首先連接配接到這個資料庫(我們先假設有這麼一個資料庫,即使它是空的)。這就好比我們要想實作上網的功能,首先要用網線連接配接到伺服器,如果不連上伺服器,你是無法上網的。連接配接資料庫的過程就是相當于建立網線連接配接的過程,就是就是建立一個通道。如果你不連接配接上資料庫,就無法操作資料庫,就好比你不建立網絡的連接配接就無從談到上網浏覽網頁了。而且,連接配接資料庫的過程,也是為了驗證安全性. 比如我這裡主要講VBA,那麼我就要首先讓我的VBA連接配接上資料庫,然後才能操作資料庫。
下面就開始講如何建立連接配接,及連接配接的方式了,用通俗的語言講,就是用什麼裝置上網呢?是電信,還是移動,聯通。這裡我還是提供幾種常見的連接配接方式及其介紹,到下一講我們将将具體的連接配接代碼了。
一 ODBC方式聯接
ODBC(Open DataBase Connectivity)翻譯過來就是開放資料庫互聯。是由微軟主導的資料庫連結标準。是一種底層的通路技術,ODBC API 可以讓客戶應用程式能從底層設定和控制資料庫,完成一些進階資料庫技術無法完成的功能;但不足之處由于ODBC是隻能用于關系型資料庫,使得利用ODBC很難通路對象資料庫及其他非關系資料庫。
二 DAO方式聯接
DAO(Data Access Object)資料通路對象型。不提供遠端通路功能。隻提供了一種通過程式代碼建立和操縱資料庫的機制。最大特點是對MICROSOFT JET資料庫的操作很友善,而且是操作JET資料庫時性能最好的技術接口之一。并且它并不隻能用于通路這種資料庫,事實上,通過DAO技術可以通路從文本檔案到大型背景資料庫等多種資料格式。Microsoft Jet為Access和Visual Basic這樣的産品提供了資料引擎。
備注1:DAO類與ODBC類相比具有很多相似之處,這主要有下面幾點:
兩者都支援對各種ODBC資料源的通路。二者使用的資料引擎不同,但都可以滿足使用者編寫應用程式的要求。由于DAO和ODBC類的許多方面都比較相似,是以隻要使用者掌握了ODBC,就很容易學會使用DAO。實際上,使用者可以很輕松地把資料庫應用程式從ODBC移植到DAO。
三ADO 方式聯接
ADO(ActiveX Data Object),是ActiveX資料對象,是基于OLE DB的通路接口,它是面向對象的OLE DB技術,繼承了OLE DB的優點。屬于資料庫通路的高層接口。是在OLE DB規程下開發的,基于OLE-DB建立連接配接的局部和遠端資料庫通路技術。同OLE-DB一樣,它要“年輕”些。使用中,我們一般用OLE-DB和ADO替代DAO和RDO。
備注2:ADO和OLEDB之間的關系為:
OLE DB是一種底層資料通路界面接口。是用于第三方驅動程式商家開發輸出資料源到ADO技術的應用程式或用于C++的開發者開發定制的資料庫元件。
ADO 是基于OLE DB的通路接口,它是面向對象的OLE DB技術,繼承了OLE DB的優點。屬于資料庫通路的高層接口。
OLE DB 是用于通路資料的重要的系統級程式設計接口,它是 ADO 的基礎技術,同時還是 http://ADO.NET 的資料源。
可以這麼說,ADO為OLEDB提供高層應用API函數。
我們可以通過下面的表格比較各種連接配接方式的優缺點:
在我的《VBA與資料庫》中大部分是以ADO的連接配接模式來進行連接配接資料庫的。
今日内容回向:
1 資料庫連接配接大概有哪幾種方式?
2 為什麼要先進行資料庫的連接配接操作?