Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Azure SQL Managed Instance
In diesem Transact-SQL-Codebeispiel wird ein Dienst definiert, der nicht typisierte XML-Dokumente archiviert. Zwei Skripts sind enthalten: das Vertragsskript und das Dienstdefinitionsskript. Im Vertragsskript werden die Nachrichtentypen und der Vertrag für den Dienst definiert. Die Nachrichtentypdefinition und die Vertragsdefinition sollten sowohl für den initiierenden Dienst als auch für den Zieldienst übereinstimmen. Daher sind die Definitionen in einem separaten Dienstdefinitionsskript enthalten, das an die Datenbanken verteilt werden kann, die den initiierenden Dienst hosten. Das Dienstdefinitionsskript definiert den Dienst selbst. Dieses Skript sollte nur in einer Datenbank ausgeführt werden, die den Zieldienst implementiert.
Hinweis
Das Dienstdefinitionsskript definiert den Zieldienst, enthält jedoch keine Implementierung des Diensts.
Vertragsskript
Hinweis
Die Codebeispiele in diesem Artikel wurden mithilfe der AdventureWorks2025 Beispieldatenbank getestet, die Sie von der Microsoft SQL Server Samples and Community Projects Homepage herunterladen können.
-- The contract script contains definitions that must be present
-- for both the initiating service and the target service.
USE AdventureWorks2008R2;
GO
-- Create messages for each broker-to-broker
-- communication needed to complete the task.
-- Message for the initiator to send XML
-- to be archived.
CREATE MESSAGE TYPE [//Adventure-Works.com/messages/ArchiveXML]
VALIDATION = WELL_FORMED_XML;
GO
-- Message to return event archiving information.
CREATE MESSAGE TYPE [//Adventure-Works.com/messages/AcknowledgeArchiveXML]
VALIDATION = WELL_FORMED_XML;
GO
-- Create a service contract to structure
-- an event archiving conversation, using
-- the message types defined above.
CREATE CONTRACT [//Adventure-Works.com/contracts/ArchiveXML/v1.0]
([//Adventure-Works.com/messages/ArchiveXML] SENT BY INITIATOR,
[//Adventure-Works.com/messages/AcknowledgeArchiveXML] SENT BY TARGET);
GO
Dienstdefinitionsskript
-- This script defines the target service. The objects created
-- by this script are only required in a database that hosts
-- the target service.
USE AdventureWorks2008R2;
GO
-- Create the service queue that will receive
-- messages for conversations that implement
-- the ArchiveXML contract.
CREATE QUEUE ArchiveQueue;
GO
-- Create the service object that exposes the
-- ArchiveEvents service contract and maps
-- it to the ArchiveQueue service queue.
CREATE SERVICE [//Adventure-Works.com/ArchiveService]
ON QUEUE ArchiveQueue
([//Adventure-Works.com/contracts/ArchiveXML/v1.0]);
GO