その他の SQL Server 以外のサブスクライバ
Microsoft がサポートしている SQL Server 以外のサブスクライバの一覧については、「SQL Server 以外のサブスクライバー」を参照してください。ここでは、ODBC ドライバと OLE DB プロバイダの要件について説明します。
ODBC ドライバの要件
ODBC ドライバは、以下の要件を満たす必要があります。
ODBC Level-1 に準拠している
スレッドセーフで、SQL Server ディストリビュータが実行されているプロセッサ アーキテクチャ (Intel または Alpha) およびプラットフォーム (32 ビットまたは 64 ビット) に対応している
トランザクションの実行が可能である
データ定義言語 (DDL) をサポートする
読み取り専用にはできない
MSreplication_subscriptions などの長いテーブル名をサポートしている
OLE DB インターフェイスを使用するレプリケーション
トランザクション レプリケーションを行うには、OLE DB プロバイダが以下のオブジェクトをサポートする必要があります。
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 は、パラメータ アクセサを作成するために必要です。プロバイダが IColumnRowset をサポートしている場合、SQL Server はこのインターフェイスを使用して列が ID 列であるかどうかを判断します。
Rowset オブジェクト インターフェイス
以下のインターフェイスが必要です。
IRowset
IAccessor
IColumnsInfo
アプリケーションは、サブスクリプション データベース内に作成された、レプリケートされるテーブル上の行セットを開く必要があります。IColumnsInfo と IAccessor は、その行セット内のデータにアクセスするために必要です。
Error オブジェクト インターフェイス
エラーの管理には、以下のインターフェイスを使用します。
IErrorRecords
IErrorInfo
ISQLErrorInfo は、OLE DB プロバイダが ISQLErrorInfo をサポートしている場合に使用します。
OLE DB プロバイダの詳細については、OLE DB プロバイダ付属のマニュアルを参照してください。