此頁沒有內(nèi)容條目
內(nèi)容

本節(jié)內(nèi)容說明三種提供者:數(shù)據(jù)提供者、服務(wù)提供者和服務(wù)組件。提供者分為兩類,提供數(shù)據(jù)的提供者和提供服務(wù)的提供者。數(shù)據(jù)提供者擁有其自己的數(shù)據(jù)并將數(shù)據(jù)以表的格式顯露給應(yīng)用程序。服務(wù)提供者通過產(chǎn)生和消費數(shù)據(jù)將服務(wù)封裝,使 ADO 應(yīng)用程序中的功能得以擴(kuò)大。服務(wù)提供者也可以進(jìn)一步定義為服務(wù)組件,服務(wù)組件必須連同其他服務(wù)提供者或組件一起工作。

數(shù)據(jù)提供者

ADO 之所以具有強大的功能和靈活性,是由于它可以連接到不同的數(shù)據(jù)提供者并仍能使用相同的編程模式,而不管給定提供者的特定特性。

然而,由于每個提供者都是唯一的,所以應(yīng)用程序與 ADO 交互作用的方式在不同的提供者之間略有差別。需要注意的差別通常歸于以下三種類型之一:

?ConnectionString 屬性中的連接參數(shù)。

 

?Command 對象的用法。

 

?特定提供者的 Recordset 行為。

以下為當(dāng)前每個可用的 Microsoft Provider 列出了三個區(qū)域中特定提供者的詳細(xì)資料。

區(qū)域

主題

ODBC 數(shù)據(jù)庫

Microsoft OLE DB Provider for ODBC

Microsoft? Index Server

Microsoft OLE DB Provider for Microsoft Index Server

Microsoft? Active Directory Service

Microsoft OLE DB Provider for Microsoft Active Directory Service

Microsoft? Jet 數(shù)據(jù)庫

OLE DB Provider for Microsoft Jet

Microsoft? SQL Server

Microsoft OLE DB Provider for SQL Server

Oracle 數(shù)據(jù)庫

Microsoft OLE DB Provider for Oracle

 

特定提供者的動態(tài)屬性

Connection、CommandRecordset 對象的 Properties 集合包括特定提供者的動態(tài)屬性。除了 ADO 所支持的內(nèi)置屬性之外,這些屬性提供提供者的特定功能信息。

建立連接和創(chuàng)建這些對象后,使用對象的 Properties 集合的 Refresh 方法可獲得提供者特定屬性。有關(guān)這些動態(tài)屬性的詳細(xì)信息,請查閱提供者文檔和 OLE DB 程序員手冊。

服務(wù)提供者

要使用服務(wù)提供者,必須提供關(guān)鍵字。同時,應(yīng)當(dāng)知道與每個服務(wù)提供者相關(guān)聯(lián)的、特定提供者的動態(tài)屬性。當(dāng)前可從 Microsoft 獲得的每個服務(wù)提供者的特定提供者詳細(xì)資料開列如下:

?Microsoft Data Shaping Service for OLE DB

 

?Microsoft OLE DB Persistence Provider

 

?Microsoft OLE DB Remoting Provider

服務(wù)組件

Cursor Service for OLE DB 服務(wù)組件補充了數(shù)據(jù)提供者的游標(biāo)支持功能。它也需要關(guān)鍵字并具有動態(tài)屬性。

Microsoft Cursor Service for OLE DB

參閱   有關(guān) OLE DB Provider 的詳細(xì)信息,請查閱數(shù)據(jù) Data Access SDK 中的 Microsoft OLE DB 文檔或訪問 http://www.microsoft.com/data 處的 Microsoft Data Access Web 頁。