其他非 SQL 伺服器訂閱者
如需 Microsoft 支援的非 SQL Server 訂閱者清單,請參閱<非 SQL Server 訂閱者>。本主題包含 ODBC 驅動程式和 OLE DB 提供者需求的資訊。
ODBC 驅動程式需求
ODBC 驅動程式:
- 必須與 ODBC (層級 1) 相容。
- 必須為安全執行緒 (Thread-safe),且適用於其上執行「SQL Server 散發者」的處理器架構 (Intel 或 Alpha) 和平台 (32 位元或 64 位元)。
- 必須能處理交易 (Transaction capable)。
- 必須支援「資料定義語言」(Data Definition Language,DDL)。
- 不能設定成唯讀。
- 必須支援長資料表名稱,例如 MSreplication_subscriptions。
使用 OLE DB 介面進行複寫
OLE DB Provider 必須支援下列物件,才能進行交易式複寫:
- DataSource 物件
- Session 物件
- Command 物件
- Rowset 物件
- Error 物件
DataSource 物件介面
若要連接到某個資料來源,您必須具備下列介面:
- IDBInitialize
- IDBCreateSession
- IDBProperties
如果提供者支援 IDBInfo 介面,Microsoft SQL Server 便會用此介面擷取例如引號識別碼字元、SQL 陳述式長度最大值、資料表和資料行名稱的字元數目之最大值等資訊。
Session 物件介面
以下是必要的介面:
- IDBCreateCommand
- ITransaction
- ITransactionLocal
- IDBSchemaRowset
Command 物件介面
以下是必要的介面:
- ICommand
- ICommandProperties
- ICommandText
- ICommandPrepare
- IColumnsInfo
- IAccessor
- ICommandWithParameters
需要 IAccessor 才能建立參數存取子 (Accessor)。如果提供者支援 IColumnRowset,SQL Server 便會用此介面判斷某個資料行是否為識別資料行。
Rowset 物件介面
以下是必要的介面:
- IRowset
- IAccessor
- IColumnsInfo
應用程式必須在訂閱資料庫中建立的複寫資料表內,開啟一個資料列集。IColumnsInfo 與 IAccessor 是存取此資料列集中的資料所必須具備的。
Error 物件介面
請使用以下介面來管理錯誤:
- IErrorRecords
- IErrorInfo
若 OLE DB 提供者支援 ISQLErrorInfo,請使用此介面。
如需 OLE DB 提供者的詳細資訊,請參閱您 OLE DB 提供者所附的文件。