次の方法で共有


Replication ActiveX Controls サンプル

更新 : 2006 年 4 月 14 日

この Readme ファイルでは、Replication ActiveX Controls サンプルのインストールと実行方法について詳しく説明します。

シナリオ

このサンプルは、SQL ディストリビューション コントロールと SQL マージ コントロールをカスタム アプリケーションに含める方法を示しています。このサンプルでは、Microsoft SQL Server 2005 の 1 つのインスタンスをパブリッシャ、ディストリビュータ、およびサブスクライバ用に使用します。この場合、SQL ディストリビューション コントロールと SQL マージ コントロールがディストリビュータで実行されます。サンプルには、2 つの異なるサンプル プロジェクトが含まれています。1 つは Microsoft Visual C++ 6.0 コンソール アプリケーション、もう 1 つは Microsoft Visual Basic 6.0 フォーム ベースのアプリケーションです。それぞれのプロジェクトで、SQL ディストリビューション コントロールと SQL マージ コントロールの両方を示します。また、これらのコントロールのコールバック機能を使用して同期の状態を監視する方法も示します。Visual Basic 6.0 アプリケーションでは、サブスクリプションのプロパティを変更することもできます。

ms345272.note(ja-jp,SQL.90).gifメモ :
マネージ コード アプリケーションでは、Microsoft.SqlServer.Replication 名前空間の TransSynchronizationAgent クラスおよび MergeSynchronizationAgent クラスを使用します。詳細については、「レプリケーションのプログラミング計画」を参照してください。

言語

  • Microsoft Visual Basic 6.0
  • Microsoft Visual C++ 6.0
  • Transact-SQL

前提条件

このサンプルを実行する前に、次のソフトウェアがインストールされていることを確認してください。

  • SQL Server 2005 (オプションでインストールされる次のコンポーネントを含む)
    • データベース サービス (レプリケーションを含む)。
    • クライアント接続コンポーネント。
    • ソフトウェア開発キット (SDK)。
    • AdventureWorks サンプル OLTP データベース。このサンプル データベースは SQL Server 2005 に含まれており、SQL Server デベロッパー センターから入手することもできます。
    • SQL Server 2005 のサンプル。これらのサンプルは SQL Server 2005 に含まれており、SQL Server デベロッパー センターから入手することもできます。詳細については、「サンプルのインストール」を参照してください。
    • Visual Studio 6.0、Visual Basic 6.0、または Visual C++ 6.0。
    ms345272.note(ja-jp,SQL.90).gifメモ :
    このサンプルは 64 ビット (IA64) プラットフォームではサポートされていません。

必要な権限

Replication ActiveX Controls サンプルでは、Windows 認証を使用します。サンプルの構成と実行を行うために必要な権限は、次のように、レプリケーション セキュリティ要件に基づいています。

  • レプリケーション作業共有の作成、レプリケーションの構成、パブリケーションの作成、および初期スナップショットの生成を行う InstallReplicationControlSample.bat を実行するには、使用する Windows アカウントが sysadmin 固定サーバー ロールのメンバである必要があります。
  • SQL ディストリビューション コントローラまたは SQL マージ コントロールを起動してサンプル サブスクリプションを同期するには、使用する Windows アカウントが、ディストリビューション データベースおよびサブスクリプション データベースの db_owner 固定データベース ロールのメンバである必要があります。

サンプルのビルドと構成

サンプル プロジェクトのビルドとレプリケーション トポロジの構成を行うには、次の手順を行います。

  • レプリケーション インストール スクリプトを実行します。
  • Visual Studio 6.0、Visual Basic 6.0、または Visual C++ 6.0 を使用して、Visual Basic バージョンまたは Visual C++ バージョンのサンプルをビルドします。

Replication Controls サンプルを構成するには

  1. AdventureWorks サンプル データベースがインストールされ、データベースがアタッチされていることを確認します。データベースがアタッチされていない場合は、SQL Server Books Online の「AdventureWorks のサンプル データベースとサンプルのインストール」を参照してください。

  2. SQL Server データベース エンジン サンプルの最新バージョンがインストールされていることを確認します。詳細については、SQL Server Books Online の「Books Online のダウンロードと更新」を参照してください。

  3. SQL Server エージェントが実行されていることを確認します。このサービスのステータスの表示およびサービスの開始は、SQL Server Management Studio のオブジェクト エクスプローラで行えます。

  4. Replication ActiveX Controls サンプル スクリプトのインストール場所へ移動します。既定の場所は、C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\Scripts です。

  5. InstallReplicationControlSample.bat を実行します。要求されたら、スナップショット エージェント ジョブを実行する Windows アカウントのログイン名 (大文字小文字を区別した "DOMAIN\login" の形式) とパスワードを入力します。これによって sqlcmd.exe が呼び出されて CreateReplicationControlPublications.sql が実行され、次のように動作します。

    • ローカル サーバーでレプリケーションが構成されていることを確認し、構成されていない場合は、ディストリビューション データベースを使用するローカル ディストリビュータをパブリッシャとして構成する。
    • サンプル パブリケーションを削除し、再作成する。
    • パブリケーションにアーティクルを追加する。
    • スナップショット エージェント ジョブを開始し、パブリケーションの初期スナップショットを生成する。
    • サブスクリプションを作成してパブリケーションに登録する。

Visual C++ 6.0 を使用して Replication ActiveX Controls サンプルをビルドするには

  1. Visual C++ 6.0 を開きます。[ファイル] メニューの [ワークスペースを開く] をクリックして、C++ プロジェクト ファイルの場所 (既定では、C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\CPP6 ディレクトリ) に移動し、distsamp.dsw を開きます。

  2. [ディレクトリ] タブの [表示するディレクトリ] ボックスの一覧で、[ライブラリ ファイル] をクリックし、パス C:\Program Files\Microsoft SQL Server\90\COM を追加します。このパスは、SQL Server 2005 が既定のディレクトリにインストールされたことを想定したものです。

  3. [ビルド] メニューの [ビルド distsamp.exe] をクリックします。ビルド後の distsamp.exe の既定の場所は、C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\CPP6\Debug または C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\CPP6\Release です。既定の場所は、ビルド構成によって異なります。

  4. 手順 1. ~ 3. を繰り返して、mergsamp.exe をビルドします。

Visual Basic 6.0 を使用して Replication ActiveX Controls サンプルをビルドするには

  1. Visual Basic 6.0 を起動します。[ファイル] メニューの [プロジェクトを開く] をクリックして、C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\VB6 ディレクトリに移動し、replsamp.vbp を開きます。

  2. [プロジェクト] メニューの [参照設定] をクリックして、[参照可能なライブラリ ファイル] ボックスで、次の参照先が有効になっていることを確認します。

    • Microsoft SQL Distribution Control 9.0
    • Microsoft SQL Merge Control 9.0
    • Microsoft SQL Replication Errors 9.0
  3. [ファイル] メニューの [ReplSamp.exe の作成] をクリックします。作成された ReplSamp.exe の既定の場所は、C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\VB6 です。

サンプルの実行

サンプルを使用するには、ビルドした実行可能ファイルの場所へ移動し、実行可能ファイルを実行する必要があります。

Visual C++ 6.0 バージョンの Replication ActiveX Controls サンプルを実行するには

  1. Visual C++ 6.0 バージョンの Replication ActiveX Controls サンプルのビルド場所に移動します。既定の場所は、C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\CPP6\Debug です。

  2. distsamp.exe を実行してディストリビューション エージェントを開始し、トランザクション パブリケーションに対するプル サブスクリプションの同期を実行します。その後、mergsamp.exe を実行して、マージ パブリケーションに対するプル サブスクリプションの同期を実行します。

Visual Basic 6.0 バージョンの Replication ActiveX Controls サンプルを実行するには

  1. Visual Basic 6.0 バージョンの Replication ActiveX Controls サンプルのビルド場所に移動します。既定の場所は、C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\VB6 です。

  2. ReplSamp.exe を実行します。

  3. [Replication Controls ActiveX Sample] フォームで、[Publication type] ボックスの一覧から [Transactional] または [Merge] を選択し、[Get Subscription Properties] をクリックします。これにより、選択したサブスクリプションのプロパティが読み込まれます。

  4. (省略可) このアプリケーションを使用して、ローカル コンピュータ上の他のプル サブスクリプションを同期することもできます。[Edit] をクリックしてサブスクリプションのプロパティを変更し、完了したら [Update] をクリックします。

  5. [Synchronize] をクリックして、サブスクリプションを同期します。

  6. (省略可) 既定のサブスクリプションの 1 つに対して高速同期を実行するには、[Synchronize] メニューの [Transactional] または [Merge] をクリックします。

サンプルの削除

次の手順に従って、Replication ActiveX Controls サンプルを削除します。

Replication ActiveX Controls サンプルを削除するには

  1. Replication ActiveX Controls サンプル スクリプトのインストール場所へ移動します。既定の場所は、C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\Scripts です。

  2. バッチ ファイル RemoveReplicationControlSample.bat を実行します。

  3. 要求された場合、「Y」と入力して Enter キーを押し、パブリッシャのレプリケーション オブジェクトのすべてと、サブスクリプション データベースのレプリケーション オブジェクトのすべてを削除し、パブリッシャでパブリッシングとディストリビューションをアンインストールします。

    ms345272.note(ja-jp,SQL.90).gif重要 :
    このスクリプトにより、レプリケーション インフラストラクチャがすべて削除されます。このパブリッシャまたはディストリビュータを使用するパブリケーションを他にも作成した場合は、RemoveReplicationControlSample.bat を実行しないでください。代わりに、手動でサンプル パブリケーションを削除する必要があります。詳細については、SQL Server Books Online の「パブリケーションを削除する方法 (SQL Server Management Studio)」または「パブリケーションを削除する方法 (レプリケーション Transact-SQL プログラミング)」を参照してください。
  4. AdventureWorksLocal データベースで、sp_removedbreplication を実行します。

  5. データベース コンテキストを master データベースに変更し、DROP DATABASE AdventureWorksLocal を実行します。

コメント

サンプルは、演習目的で利用するためにのみ提供されています。サンプルを運用環境で使用することは想定されていないため、運用環境でのサンプルのテストは行われていません。Microsoft では、これらのサンプルに関する製品サポート サービスを提供していません。システム管理者の承認を得ることなく、サンプル アプリケーションやサンプル アセンブリを、運用中の SQL Server データベースやレポート サーバーに接続したり、これらのデータと共に使用することは避けてください。 Microsoft からは、これらのサンプルについてのテクニカル サポートは提供されません。サンプル アプリケーションおよびサンプル アセンブリは、システム管理者の許可なしに、運用中の SQL Server データベースやレポート サーバーに接続しないようにしてください。

参照

概念

レプリケーション サンプル

その他の技術情報

レプリケーションのプログラミング計画
レプリケーション開発者向けの情報

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 4 月 14 日

新しい内容 :
  • このサンプルは 64 ビット (IA64) プラットフォームではサポートされていないという注意事項を追加しました。