その他の SQL Server 以外のサブスクライバー

適用対象: SQL サーバー

SQL Server がサポートしている SQL Server 以外のサブスクライバーの一覧については、 「SQL Server 以外のサブスクライバー」を参照してください。 ここでは、ODBC ドライバーと OLE DB プロバイダーの要件について説明します。

ODBC ドライバーの要件

ODBC ドライバーは、以下の要件を満たす必要があります。

  • ODBC Level-1 に準拠している

  • スレッド セーフのディストリビューター環境である

  • トランザクションの実行が可能である

  • データ定義言語 (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

コマンド オブジェクト インターフェイス

以下のインターフェイスが必要です。

  • ICommand

  • ICommandProperties

  • ICommandText

  • ICommandPrepare

  • IColumnsInfo

  • IAccessor

  • ICommandWithParameters

IAccessor は、パラメーター アクセサーを作成するために必要です。 プロバイダーが IColumnRowsetをサポートしている場合、 SQL Server はこのインターフェイスを使用して列が ID 列であるかどうかを判断します。

Rowset オブジェクト インターフェイス

以下のインターフェイスが必要です。

  • IRowset

  • IAccessor

  • IColumnsInfo

アプリケーションは、サブスクリプション データベース内に作成された、レプリケートされるテーブル上の行セットを開く必要があります。 IColumnsInfoIAccessor は、その行セット内のデータにアクセスするために必要です。

Error オブジェクト インターフェイス

エラーの管理には、以下のインターフェイスを使用します。

  • IErrorRecords

  • IErrorInfo

ISQLErrorInfo は、OLE DB プロバイダーが ISQLErrorInfo をサポートしている場合に使用します。

OLE DB プロバイダーの詳細については、OLE DB プロバイダー付属のマニュアルを参照してください。

参照

SQL Server 以外のサブスクライバー