第 3 课:创建发起方对话对象

适用于SQL ServerAzure SQL 托管实例

在本课中,你将学习如何生成所有对象,使数据库能够启动与另一个数据库的会话。

过程

切换到 InitiatorDB 数据库

  • 将以下代码复制并粘贴到“查询编辑器”窗口中,然后运行它,将上下文切换到 InitiatorDB 数据库。

    USE InitiatorDB;
    GO
    

创建消息类型

  • 将以下代码复制并粘贴到“查询编辑器”窗口中,然后运行它来创建对话的消息类型。 此处指定的消息类型名称和属性必须与在上一课的 TargetDB 中创建的消息类型名称和属性相同。

    CREATE MESSAGE TYPE [//BothDB/2DBSample/RequestMessage]
        VALIDATION = WELL_FORMED_XML;
    
    CREATE MESSAGE TYPE [//BothDB/2DBSample/ReplyMessage]
        VALIDATION = WELL_FORMED_XML;
    GO
    

创建协定

  • 将以下代码复制并粘贴到“查询编辑器”窗口中,然后运行它来创建对话的协定。 此处指定的协定名称和属性必须与在上一课的 TargetDB 中创建的协定相同。

    CREATE CONTRACT [//BothDB/2DBSample/SimpleContract]
        ([//BothDB/2DBSample/RequestMessage] SENT BY INITIATOR,
        [//BothDB/2DBSample/ReplyMessage] SENT BY TARGET);
    GO
    

创建发起方队列和服务

  • 将以下代码复制并粘贴到“查询编辑器”窗口中,然后运行它来创建用于发起程序的队列和服务。 由于未指定约定名称,因而其他服务不可将此服务用作目标服务。

    CREATE QUEUE InitiatorQueue2DB;
    
    CREATE SERVICE [//InitDB/2DBSample/InitiatorService]
        ON QUEUE InitiatorQueue2DB;
    GO
    

后续步骤

已成功将 InitiatorDBTargetDB 配置为支持两个数据库之间的对话。 接下来,完成使用配置的对话。