OLE DB 提供者 (ADO)
OLE DB 會定義一組 COM 介面,讓應用程式能夠統一存取儲存在各種資訊來源中的資料。 此方法可讓資料來源透過支援適用於資料來源之 DBMS 功能的介面來共用其資料。 根據設計,OLE DB 的高效能架構是以使用彈性的元件型服務模型為基礎。 OLE DB 不需要在應用程式與資料之間有指定數目的中繼層,只需要完成特定工作所需的元件數目。
例如,假設使用者想要執行查詢。 請考慮下列案例:
資料位於目前有 ODBC 驅動程式但沒有原生 OLE DB 提供者的關聯式資料庫中:應用程式會使用 ADO 與 OLE DB Provider for ODBC 通訊,然後載入適當的 ODBC 驅動程式。 驅動程式會將 SQL 陳述式傳遞至 DBMS,以擷取資料。
資料位於有原生 OLE DB 提供者的 Microsoft SQL Server:應用程式會使用 ADO 直接與 OLE DB Provider for Microsoft SQL Server 通訊。 不需要任何媒介。
資料位於 Microsoft Exchange Server,其中有 OLE DB 提供者,但不會公開引擎來處理 SQL 查詢:應用程式會使用 ADO 與 OLE DB Provider for Microsoft Exchange 通訊,並在 OLE DB 查詢處理器元件上呼叫來處理查詢。
資料會以文件形式位於 Microsoft NTFS 檔案系統中:資料是透過 Microsoft 索引服務的原生 OLE DB 提供者來存取,其會對檔案系統中文件的內容和屬性編製索引,以啟用有效率的內容搜尋。
在上述所有範例中,應用程式都可以查詢資料。 使用者的需求符合最少的元件數目。 在每個案例中,只有在需要時才使用其他元件,而且只會叫用必要的元件。 使用 OLE DB 時,可重複使用且可共用元件的這項需求負載可大幅提升效能。
提供者分為兩種類別:提供資料和提供服務。 資料提供者擁有自己的資料,並以表格形式向您的應用程式公開資料。 服務提供者可藉由產生及取用資料、增強 ADO 應用程式中的功能來封裝服務。 服務提供者也可以進一步定義為服務元件,必須與其他服務提供者或元件一起運作。
ADO 為各種 OLE DB 提供者提供一致的較高層級介面。
此章節包含下列主題。