ODBC (Open Database Connectivity)
- 統一 C/C++ 呼叫介面,透過驅動程式管理器對接不同 DBMS。
- 應用程式僅需更換驅動程式即可切換資料庫,無需修改程式碼。
- 缺點:低階 API,VB/Scripting 語言難以直接呼叫。
DAO (Data Access Objects) 與 RDO (Remote Data Objects)
- DAO:建立於 Jet 引擎(Access)之上,操作 Access 最快;透過 ODBC 連接 SQL Server/Oracle 時需經 Jet 轉譯,效能較差。
- RDO:直接呼叫 ODBC API,繞過 Jet,適合 Client/Server 架構下的 VB 開發。
- ODBCDirect:DAO 3.5+ 擴充,在後台使用 RDO,讓既有 DAO 程式碼無縫升級。
OLE DB
- COM 介面集合,統一存取關聯、非關聯(郵件、檔案系統、目錄服務...)資料來源。
- Provider/Consumer 模型:資料提供者實作介面,消費者(ADO、報表工具)統一呼叫。
- 為 ADO、ADO.NET 奠定架構基礎。
演進脈絡
ODBC → DAO/RDO/ODBCDirect → OLE DB → ADO → ADO.NET,每一代解決前一代的平台限制、語言門檻、資料來源多樣性問題。