データベース間のメッセージ交換の完了
このチュートリアルは、Service Broker は初めて使用するが、データベースの概念と Transact-SQL ステートメントについては理解しているユーザーを対象としています。ここでは初心者のユーザーを対象に、データベース エンジンの同じインスタンス上の 2 つのデータベース間で基本的なメッセージ交換を構築および実行する方法を紹介します。
学習する内容
このチュートリアルは、「単一のデータベース内でのメッセージ交換の完了」で学習した作業に基づいています。このチュートリアルでは、データベース エンジンの同じインスタンス上の 2 つのデータベース間で実行されるようにメッセージ交換を構成する方法を学習します。
レッスン 2 で実行する手順は、レッスン 1 で実行した手順と同じですが、次の違いがあります。
InitiatorDB と TargetDB の 2 つのデータベースを作成します。すべての発信側サービスおよびキューを InitiatorDB で作成し、発信先サービスおよびキューを TargetDB で作成します。
メッセージ型およびコントラクトのコピーを 2 つ作成します。1 つは InitiatorDB で作成し、もう 1 つは TargetDB で作成します。メッセージ交換の両側は、メッセージ型およびコントラクトの同一の定義にアクセスできる必要があります。
InitiatorDB で TRUSTWORTHY データベース プロパティを ON に設定します。これは、2 つのデータベースがデータベース エンジンの同じインスタンスに存在するときに、それらのデータベース間でメッセージ交換を可能にするための最も簡単なメカニズムです。
メッセージ交換を完了するために各データベースで実行する必要があるステートメントと、それらのステートメントの実行順序を学習します。
発信側と発信先がデータベース エンジンの同じインスタンスに存在するメッセージ交換では、メッセージはネットワークを介して転送されません。データベース エンジンのセキュリティおよび権限により、許可されたプリンシパルへのアクセスが制限されます。このシナリオでは、ネットワーク暗号化は必要ありません。
このチュートリアルは、次の 4 つのレッスンで構成されています。
レッスン 1 : データベースの作成
このレッスンでは、データベースを作成し、発信側データベースで TRUSTWORTHY オプションを有効にします。レッスン 2 : 発信先メッセージ交換オブジェクトの作成
このレッスンでは、発信先データベースのメッセージ型、コントラクト、サービス、およびキューを作成します。レッスン 3 : 発信側メッセージ交換オブジェクトの作成
このレッスンでは、発信側データベースのメッセージ型、コントラクト、サービス、およびキューを作成します。レッスン 4 : メッセージ交換の開始とメッセージの送信
このレッスンでは、メッセージ交換を開始し、発信側から発信先に要求メッセージを転送して、基本的なメッセージ交換を完了します。次に、応答メッセージを発信側に返信し、メッセージ交換を終了します。
必要条件
このチュートリアルを完了するには、Transact-SQL 言語と、SQL Server Management Studio のデータベース エンジン クエリ エディタの使用方法についての知識が必要です。また、このチュートリアルを実行するには、CREATE DATABASE、CREATE ANY DATABASE、ALTER ANY DATABASE のいずれかの権限が必要です。
システムには次のコンポーネントがインストールされている必要があります。
SQL Server 2005 または SQL Server 2008 の任意のエディション
SQL Server Management Studio または Management Studio Express
Internet Explorer 6 以降
注 チュートリアルを行うときは、ドキュメント ビューアのツール バーに [次のトピック] ボタンと [前のトピック] ボタンを追加することをお勧めします。詳細については、「ヘルプへの [次のトピック] ボタンと [前のトピック] ボタンの追加」を参照してください。