共用方式為


第 1 課:建立交談物件

新增: 2007 年 9 月 15 日

在本課程中,您將學習建立可讓資料庫在該資料庫中支援交談的所有物件。

程序

啟用 ervice Broker 並切換至 AdventureWorks 資料庫

  1. 複製下列程式碼並在 [查詢編輯器] 視窗中貼上,然後執行,即可確保在 AdventureWorks 資料庫中啟用 Service Broker,並將內容切換為該資料庫。

    USE master;
    GO
    ALTER DATABASE AdventureWorks
          SET ENABLE_BROKER;
    GO
    USE AdventureWorks;
    GO
    

建立訊息類型

  1. 複製下列程式碼並在 [查詢編輯器] 視窗中貼上,然後執行,即可建立交談的訊息類型。因為 Database Engine 的多個執行個體之間經常會參考 Service Broker 物件,所以大部分 Service Broker 物件的名稱都會使用 URI 格式。這有助於確保這些名稱在多部電腦之間是唯一的。這兩種訊息類型都會指定,Service Broker 只驗證訊息是否為格式正確的 XML 文件,但不針對特定結構描述驗證 XML。

    CREATE MESSAGE TYPE
           [//AWDB/1DBSample/RequestMessage]
           VALIDATION = WELL_FORMED_XML;
    CREATE MESSAGE TYPE
           [//AWDB/1DBSample/ReplyMessage]
           VALIDATION = WELL_FORMED_XML;
    GO
    

建立合約

  1. 複製下列程式碼並在 [查詢編輯器] 視窗中貼上,然後執行,即可建立交談的合約。合約會指定,使用該合約的交談必須從起始端將 //AWDB/1DBSample/RequestMessage 類型的訊息傳送至目標,以及從目標將 //AWDB/1DBSample/ReplyMessage 類型的訊息傳送至起始端。

    CREATE CONTRACT [//AWDB/1DBSample/SampleContract]
          ([//AWDB/1DBSample/RequestMessage]
           SENT BY INITIATOR,
           [//AWDB/1DBSample/ReplyMessage]
           SENT BY TARGET
          );
    GO
    

建立目標佇列和服務

  1. 複製下列程式碼並在 [查詢編輯器] 視窗中貼上,然後執行,即可建立用來做為目標的佇列和服務。因為佇列是從同一個資料庫透過與資料表和檢視類似的方式被參考,所以佇列名稱的格式與資料表或檢視名稱的格式相似。CREATE SERVICE 陳述式會使服務與 TargetQueue2DB 產生關聯。因此,傳送至服務的所有訊息都會在 TargetQueue2DB 中收到。CREATE SERVICE 也會指定,只有使用先前建立之 //AWDB/1DBSample/SampleContract 的交談才可以使用此服務做為目標服務。

    CREATE QUEUE TargetQueue1DB;
    
    CREATE SERVICE
           [//AWDB/1DBSample/TargetService]
           ON QUEUE TargetQueue1DB
           ([//AWDB/1DBSample/SampleContract]);
    GO
    

建立起始端佇列和服務

  1. 複製下列程式碼並在 [查詢編輯器] 視窗中貼上,然後執行,即可建立用來做為起始端的佇列和服務。因為沒有指定合約名稱,所以其他服務無法使用這個服務做為目標服務。

    CREATE QUEUE InitiatorQueue1DB;
    
    CREATE SERVICE
           [//AWDB/1DBSample/InitiatorService]
           ON QUEUE InitiatorQueue1DB;
    GO
    

後續的步驟

您已成功設定 AdventureWorks,以支援 //AWDB/1DBSample/InitiatorService//AWDB/1DBSample/TargetService 之間的交談。接下來,您將會使用組態來完成交談。請參閱<第 2 課:開始交談並傳輸訊息>。

請參閱

其他資源

ALTER DATABASE (Transact-SQL)
CREATE MESSAGE TYPE (Transact-SQL)
CREATE CONTRACT (Transact-SQL)
CREATE QUEUE (Transact-SQL)
CREATE SERVICE (Transact-SQL)
交談架構
服務架構

說明及資訊

取得 SQL Server 2005 協助