Microsoft でサポートされている SQL Server 以外のサブスクライバーの一覧については、「 SQL Server 以外のサブスクライバー」を参照してください。 このトピックでは、ODBC ドライバーと OLE DB プロバイダーの要件について説明します。
ODBC ドライバーの要件
ODBC ドライバー:
ODBC レベル 1 に準拠している必要があります。
スレッド セーフである必要があり、SQL Server ディストリビューターが実行されるプロセッサ アーキテクチャ (Intel またはアルファ) とプラットフォーム (32 ビットまたは 64 ビット) の場合。
トランザクションに対応している必要があります。
データ定義言語 (DDL) をサポートする必要があります。
読み取り専用にすることはできません。
MSreplication_subscriptionsなどの長いテーブル名をサポートする必要があります。
OLE DB インターフェイスを使用してデータをレプリケートする
OLE DB プロバイダーは、トランザクション レプリケーション用に次のオブジェクトをサポートする必要があります。
DataSource オブジェクト
セッション オブジェクト
コマンド オブジェクト
Rowset オブジェクト
エラー オブジェクト
DataSource オブジェクト インターフェイス
データ ソースに接続するには、次のインターフェイスが必要です。
IDBInitialize
IDBCreateSession
IDBProperties
プロバイダーが IDBInfo インターフェイスをサポートしている場合、Microsoft SQL Server はインターフェイスを使用して、引用符で囲まれた識別子文字、SQL ステートメントの最大長、テーブル名と列名の最大文字数などの情報を取得します。
セッション オブジェクト インターフェイス
次のインターフェイスが必要です。
IDBCreateCommand
ITransaction
ITransactionLocal
IDBSchemaRowset
コマンド オブジェクト インターフェイス
次のインターフェイスが必要です。
ICommand
ICommandProperties
アイコマンドテキスト (ICommandText)
ICommandPrepare
IColumnsInfo
IAccessor
ICommandWithParameters
パラメーター アクセサー を作成するには、IAccessor が必要です。 プロバイダーが IColumnRowset をサポートしている場合、SQL Server はそのインターフェイスを使用して、列が ID 列であるかどうかを判断します。
行セット オブジェクト インターフェイス
次のインターフェイスが必要です。
IRowset
IAccessor
IColumnsInfo
アプリケーションは、サブスクリプション データベースに作成されたレプリケートテーブルの行セットを開く必要があります。 行セット内のデータにアクセスするには、IColumnsInfo と IAccessor が必要です。
Error オブジェクト インターフェイス
エラーを管理するには、次のインターフェイスを使用します。
IErrorRecords
IErrorInfo の
OLE DB プロバイダーでサポートされている場合は、 ISQLErrorInfo を使用します。
OLE DB プロバイダーの詳細については、OLE DB プロバイダーに付属のドキュメントを参照してください。