其他非 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 介面,MicrosoftSQL 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 提供者所附的文件。