Microsoft Data Access Components
此條目需要補充更多來源。 (2020年6月13日) |
開發者 | Microsoft |
---|---|
當前版本 | 2.8 SP1(2.81.1117.6)(May 2005) |
作業系統 | Windows 98, Windows Me, Windows NT 4, Windows 2000, Windows XP, Windows Server 2003 |
類型 | Database |
許可協議 | Microsoft EULA |
網站 | Microsoft MDAC Center |
Microsoft Data Access Components(MDAC)是微軟專門為資料存取功能而發展的應用程式開發介面,做為微軟的統一化資料存取(Universal Data Access; UDA)解決方案的核心組成,最初的版本在1996年8月發表。目前其組成元件有ODBC,OLE DB以及ADO,其中ADO是在Visual Basic上唯一的資料存取管道,而OLE DB則是基於COM之上,供C/C++存取與提供資料的介面,ODBC則是統一化的資料存取API。
體系架構
[編輯]MDAC體系架構可視作三層:
- 編程介面層:包括ADO與ADO.NET
- 資料庫訪問層,由資料庫製造商開發,如:Oracle或Microsoft的OLE DB、.NET managed providers、ODBC drivers
- 資料庫自身。
開發者還能直接寫程式訪問OLE DB或ODBC。
組成元件
[編輯]MDAC中包含了下列的元件:
SQL Server使用者端網路函式庫
[編輯]SQL Server Network Client Library(在SQL Server 2005時由SQL Native Client取代)是要連接SQL Server所必要的使用者端函式庫,提供必要的資料流轉譯的支援,並作為OLE DB Provider for SQL Server, ODBC SQL Server Driver, SQL Server .NET Provider等資料提供者的底層通訊函式庫。
ADO
[編輯]為以COM為基礎所開發的資料存取元件,供高階程式語言使用,像是手稿語言(Scripting Language)或是Visual Basic,目前已被Microsoft Windows平台上的開發人員廣為採用,它向上提供數個物件類別供應用程式呼叫,向下則是呼叫OLE DB所提供的介面,因此資料庫必須要有OLE DB Provider,才可以由ADO呼叫,這個機制在.NET Framework中的ADO.NET中也持續採用。
OLE DB
[編輯]OLE DB是作為由資料來源中撈取資料並接受來自ADO的指令來提供資料的介面,此介面是由COM規格所開發,同時也可以直接由C/C++來存取。
ODBC
[編輯]ODBC(Open Database Connectivity)是由SQL Access Group,X/Open(目前為The Open Group的一部份)以及ISO/EIC所提出的Call Level Interface(CLI,呼叫層次介面)介面規格[1],由微軟開發出第一份ODBC的實作,每一個資料庫都可以實作出連結自家資料來源的ODBC驅動程式(Driver),而應用程式開發人員能夠利用ODBC所開放的API呼叫,經由ODBC Driver來進入資料庫進行存取以及處理工作。
Jet資料庫工具
[編輯]微軟特別為Microsoft Jet的資料庫提供了兩個重要的元件:
- ADOX:可由開發人員經由封裝在ADOX中的DDL和DCL能力來對Microsoft Access資料庫執行資料庫物件的修改以及權限上的控制。
- JRO:可由開發人員經由封裝在JRO中的物件,對Microsoft Access資料庫執行複製,修補與壓縮等工作。
曾內含在MDAC中的元件
[編輯]- Embedded SQL/C(ESQL/C):在C語言中內嵌SQL,送到資料庫中執行,ESQL/C在SQL Server 7.0起終止。
- RDO(Remote Data Object):為提供網路資料存取所開發的元件,當時ADO尚未成熟,目前已由ADO取代。
- DAO(Data Access Object):為早期Microsoft Access的官方API,但目前已由ADO取代,其DDL功能也由ADOX所取代。
- DB-Library:為C語言直接存取SQL Server的專屬低階介面,在SQL Server 2005起終止支援。
版本列表
[編輯]微軟提供了兩個方法來檢查電腦中所安裝的MDAC版本為何,其中一個方法是使用ADO.NET Component Checker程式,它可以檢查每個MDAC所安裝的DLL版本;另一個方法是檢查登錄資料庫機碼:HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess\FullInstallVer
版本 | 釋出日期 | 散布方法 | 功能 | 安全漏洞 |
---|---|---|---|---|
1.0 | 1996/8 |
|
|
無 |
1.5 | 1997/9-1998/3 |
|
||
1.5a | 1997/9-1998/3 |
|
服務釋出版(Service Release) | |
1.5b | 1997/9-1998/3 |
|
服務釋出版(Service Release) | |
1.5c | 1997/9-1998/3 |
|
| |
2.0 | 1998/7/1 |
|
||
2.0SP1 | 1998/7/1 |
|
Windows NT 4.0的Y2K修正 | |
2.0SP2 | 1998/7/1 |
|
所有平台的Y2K修正 | |
2.1 | 1998/7/11 |
|
|
|
2.1 SP1 | 1999/3/15 |
| ||
2.1 SP1a (GA) | 1999/4/1 |
| ||
2.1 SP2 | 1999/7 |
| ||
2.5 | 2000/2/17 |
|
|
|
2.5 SP1 | 2000/7 |
| ||
2.5 SP2 | 2000/4 |
| ||
2.5 SPS3 | 2003/12 |
| ||
2.6 | 2000/9 |
|
不包含(手動安裝):
|
|
2.6 SP1 | 2001/5 |
| ||
2.6 SP2 | 2002/5 |
| ||
2.7 | 2001/10|
|
|
||
2.8 | 2003/8 |
|
修補臭蟲與安全問題: | |
2.8 SP1 | 2005/5 |
|
Fixed bugs | |
2.8 SP2 | 2005/3 |
|
||
9.0 | 由此時開始,MDAC隨作業系統散布。 |
|
||
Windows DAC 6.0(與Vista所使用的MDAC版本不同) | 2006/11 |
|
沒有新功能,由Windows Vista使用。 |
參考資料
[編輯]- ^ Chapter 11 Changes (頁面存檔備份,存於網際網路檔案館), supplementary material to "A First Look at SQL Server 2005 for Developers" by Bob Beauchemin, Niels Berglund, and Dan Sullivan.