共用方式為


實作內部啟動

本教學課程的主要對象是剛接觸 Service Broker 但熟悉資料庫概念和 Transact-SQL 陳述式的使用者。它將透過說明如何實作內部啟動預存程序來處理 Service Broker 訊息,協助新使用者快速入門。

學習內容

本教學課程會示範如何使用內部啟動預存程序來建立支援簡易要求回覆 Service Broker 交談所需的資料庫物件。然後,您將啟動交談並使用它來傳輸訊息。

每個 Service Broker 交談都具有兩端:交談起始端和目標。在要求回覆交談中,要求訊息是從起始端傳送至目標,然後傳回回覆訊息。每當有訊息待處理時,Service Broker 內部啟動就可用來執行預存程序。如果要傳輸許多訊息,Service Broker 就可以執行預存程序的多個副本。本教學課程會示範如何建立在目標接收要求訊息的預存程序,以及如何將目標設定為使用內部啟動來執行預存程序。

您將執行下列工作:

  • 建立目標的服務和佇列以及起始端的服務和佇列。

  • 建立要求訊息類型和回覆訊息類型。

  • 建立一個合約,其中指定要求訊息要從起始端移至目標的合約,而且回覆訊息要從目標移至起始端。

  • 建立一個預存程序,它會從目標佇列接收要求訊息,然後將回覆訊息傳送至起始端。

  • 更改目標佇列,以便啟用預存程序的內部啟動。

然後,您將執行簡易交談:

  • 啟動交談。

  • 將要求從起始端傳送至目標。

  • Service Broker 接著便啟動預存程序。此預存程序會接收目標的要求並將回覆傳送至起始端。

  • 接收起始端的回覆。

  • 結束交談的起始端。

  • Service Broker 接著便第二次啟動預存程序,然後預存程序會結束交談的目標端。

若為兩端位於相同 Database Engine 執行個體中的交談,訊息就不會在網路之間傳輸。Database Engine 安全性和權限會限制授權原則的存取。這個狀況不需要使用網路加密。

本教學課程分成三個課程:

  • 第 1 課:建立基底交談物件
    在這一課,您會建立支援基本 Service Broker 交談所需的訊息類型、合約、服務和佇列。

  • 第 2 課:建立內部啟動程序
    在這一課,您會建立將從目標佇列接收訊息的預存程序,然後更改目標佇列以便指定內部啟動。

  • 第 3 課:開始交談和傳輸訊息
    在這一課,您會透過啟動交談,然後將要求訊息從起始端傳輸至目標,完成基本交談。此內部啟動預存程序會接收要求訊息並傳回回覆訊息。然後,您會結束交談的起始端,而預存程序會結束交談的目標端。

  • 第 4 課:卸除交談物件
    在這一課,您會卸除用來支援交談的物件。

需求

若要完成本教學課程,您必須熟悉 Transact-SQL 語言以及如何使用 SQL Server Management Studio 中的 Database Engine 查詢編輯器。您必須是 AdventureWorks 範例資料庫之 db_ddladmindb_owner 固定資料庫角色的成員,或系統管理員 (sysadmin) 固定伺服器角色的成員。

另外,系統必須有安裝下列程式:

  • 任何 SQL Server 2005 或 SQL Server 2008 版本。

  • SQL Server Management Studio 或 Management Studio Express。

  • Internet Explorer 6 或更新的版本。

  • AdventureWorks 範例資料庫。如需有關如何安裝範例資料庫的詳細資訊,請參閱<安裝 SQL Server 範例和範例資料庫的考量>。

    [!附註]

    檢閱教學課程時,建議您將 [下一個主題][上一個主題] 按鈕加入文件檢視器工具列中。如需詳細資訊,請參閱<在說明中加入 [下一個] 和 [上一個] 按鈕>。