共用方式為


OLE DB Provider for ODBC (Database Engine)

OLE DB Provider for ODBC 提供至 ODBC 資料來源的 OLE DB 介面。透過使用 OLE DB Provider for ODBC,分散式查詢可以存取所有的 ODBC 資料。

ms191462.note(zh-tw,SQL.90).gif附註:
對於 SQL Server 2005 與 SQL Server 2000 資料來源,請使用 SQL Native Client OLE DB Provider。請勿使用 OLE DB Provider for ODBC。

若要在使用 ODBC 資料來源時,建立連結伺服器來存取 ODBC 資料庫:

  1. 在安裝 SQL Server 的電腦上建立一個系統資料來源。

  2. 執行 sp_addlinkedserver 來建立連結伺服器,並指定 MSDASQL 或 NULL 作為 provider_name,以及指定 ODBC 系統資料來源的名稱作為 data_source

    ODBC 使用者資料來源無法用於分散式查詢,因為 SQL Server 是以服務的方式在 Microsoft Windows 上執行,而且服務不一定擁有使用者資料來源的存取權。例如,一個名為 SystemDSN 的系統資料來源參考一個執行 SQL Server 的伺服器,而且該伺服器的預設資料庫為 AdventureWorks

    sp_addlinkedserver 'SQLAdWorks', ' ', 'MSDASQL', 'SystemDSN'
    

連結伺服器不需使用 ODBC 資料來源,即可使用 OLE DB Provider for ODBC。定義連結伺服器只需一個步驟。OLE DB Provider for ODBC 在尋找 ODBC 驅動程式和連接到 ODBC 資料來源時所需的所有資訊,都必須定義在 provider_string 中。

若連結伺服器是使用 OLE DB Provider for ODBC 來定義,並且存取 SQL Server 資料庫,則會存在下列限制:

  • 若資料表擁有一個或多個 timestamp 資料行,將不會參考資料表。
  • 若資料表擁有可設為 Null 的 charvarcharncharnvarcharbinaryvarbinary 資料行,而且 ANSI_PADDING 選項在建立資料表時設定為 OFF。

請參閱

概念

以 SQL Server 測試 OLE DB 提供者
SQL Native Client OLE DB 提供者
分散式查詢

其他資源

sp_addlinkedserver (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助