(0) exportieren Drucken
Alle erweitern
Erweitern Minimieren
Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

ALTER BROKER PRIORITY (Transact-SQL)

Ändert die Eigenschaften einer Service Broker-Konversationspriorität.

Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version).

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

ALTER BROKER PRIORITY ConversationPriorityName
FOR CONVERSATION
{ SET ( [ CONTRACT_NAME = {ContractName | ANY } ]
        [ [ , ] LOCAL_SERVICE_NAME = {LocalServiceName | ANY } ]
        [ [ , ] REMOTE_SERVICE_NAME = {'RemoteServiceName' | ANY } ]
        [ [ , ] PRIORITY_LEVEL = { PriorityValue | DEFAULT } ]
              )
}
[;]

ConversationPriorityName

Gibt den Namen der zu ändernden Konversationspriorität an. Der Name muss auf eine Konversationspriorität in der aktuellen Datenbank verweisen.

SET

Gibt die Kriterien an, anhand derer bestimmt wird, ob die Konversationspriorität für eine Konversation übernommen wird. SET ist erforderlich und muss mindestens ein Kriterium enthalten: CONTRACT_NAME, LOCAL_SERVICE_NAME, REMOTE_SERVICE_NAME oder PRIORITY_LEVEL.

CONTRACT_NAME = {ContractName | ANY}

Gibt den Namen eines Vertrags an, der als Kriterium für die Festlegung verwendet wird, ob die Konversationspriorität für eine Konversation gelten soll. ContractName ist ein Database Engine (Datenbankmodul)-Bezeichner und muss den Namen eines Vertrags in der aktuellen Datenbank angeben.

ContractName

Gibt an, dass die Konversationspriorität nur für Konversationen übernommen werden kann, bei denen die BEGIN DIALOG-Anweisung, mit der die Konversation gestartet wurde, auf ON CONTRACT ContractName festgelegt ist.

ANY

Gibt an, dass die Konversationspriorität für jede Konversation unabhängig vom verwendeten Vertrag übernommen werden kann.

Wenn CONTRACT_NAME nicht angegeben ist, wird die Eigenschaft für den Vertrag der Konversationspriorität nicht geändert.

LOCAL_SERVICE_NAME = {LocalServiceName | ANY}

Gibt den Namen eines Diensts an, der als Kriterium verwendet werden kann, um zu bestimmen, ob die Konversationspriorität für einen Konversationsendpunkt übernommen wird.

LocalServiceName ist ein Database Engine (Datenbankmodul)-Bezeichner, der den Namen eines Diensts in der aktuellen Datenbank angeben muss.

LocalServiceName

Gibt an, dass die Konversationspriorität für Folgendes übernommen werden kann:

  • Jeden Konversationsendpunkt für den Initiator, dessen Initiatordienstname LocalServiceName entspricht.

  • Jeden Konversationsendpunkt für das Ziel, dessen Zieldienstname LocalServiceName entspricht.

ANY
  • Gibt an, dass die Konversationspriorität unabhängig vom Namen des vom Endpunkt verwendeten lokalen Diensts für jeden Konversationsendpunkt übernommen werden kann.

Wenn LOCAL_SERVICE_NAME nicht angegeben ist, wird die Eigenschaft für den lokalen Dienst der Konversationspriorität nicht geändert.

REMOTE_SERVICE_NAME = {'RemoteServiceName' | ANY}

Gibt den Namen eines Diensts an, der als Kriterium verwendet werden kann, um zu bestimmen, ob die Konversationspriorität für einen Konversationsendpunkt übernommen wird.

RemoteServiceName ist ein Literal vom Typ nvarchar (256). Service Broker führt einen bitweisen Vergleich mit der RemoteServiceName-Zeichenfolge aus. Bei dem Vergleich wird die Groß-/Kleinschreibung beachtet, die aktuelle Sortierung hingegen wird nicht berücksichtigt. Der Zieldienst kann in der aktuellen Instanz von Database Engine (Datenbankmodul) oder in einer Remoteinstanz von Database Engine (Datenbankmodul) vorhanden sein.

'RemoteServiceName'

Gibt an, dass die Konversationspriorität Folgendem zugewiesen werden kann:

  • Jedem Konversationsendpunkt für den Initiator, dessen zugeordneter Zieldienstname RemoteServiceName entspricht.

  • Jedem Konversationsendpunkt für das Ziel, dessen zugeordneter Initiatordienstname RemoteServiceName entspricht.

ANY

Gibt an, dass die Konversationspriorität unabhängig vom Namen des dem Endpunkt zugeordneten Remotediensts für jeden Konversationsendpunkt übernommen wird.

Wenn REMOTE_SERVICE_NAME nicht angegeben ist, wird die Eigenschaft für den Remotedienst der Konversationspriorität nicht geändert.

PRIORITY_LEVEL = { PriorityValue | DEFAULT }

Gibt die Prioritätsebene an, die jedem Konversationsendpunkt zugeordnet werden soll, der die Verträge und Dienste verwendet, die für die Konversationspriorität angegeben werden. PriorityValue muss ein ganzzahliges Literal zwischen 1 (niedrigste Priorität) und 10 (höchste Priorität) sein.

Wenn PRIORITY_LEVEL nicht angegeben ist, wird die Eigenschaft für die Prioritätsebene der Konversationspriorität nicht geändert.

Keine Eigenschaften, die von ALTER BROKER PRIORITY geändert werden, werden für vorhandene Konversationen übernommen. Die vorhandenen Konversationen werden mit der Priorität fortgesetzt, die beim Starten der Konversationen zugewiesen wurde.

Weitere Informationen finden Sie unter CREATE BROKER PRIORITY (Transact-SQL).

Die Berechtigung zum Erstellen einer Konversationspriorität erhalten standardmäßig die Mitglieder der festen Datenbankrolle db_ddladmin oder db_owner und die feste Serverrolle sysadmin. Erfordert die ALTER-Berechtigung für die Datenbank.

A.Ändern der Prioritätsstufe einer vorhandenen Konversationspriorität.

Ändert die Prioritätsebene, nicht hingegen die Eigenschaften für den Vertrag, lokalen Dienst oder Remotedienst.

ALTER BROKER PRIORITY SimpleContractDefaultPriority
    FOR CONVERSATION
    SET (PRIORITY_LEVEL = 3);

B.Ändern aller Eigenschaften einer vorhandenen Konversationspriorität.

Ändert die Eigenschaften für Prioritätsebene, Vertrag, lokalen Dienst und Remotedienst.

ALTER BROKER PRIORITY SimpleContractPriority
    FOR CONVERSATION
    SET (CONTRACT_NAME = SimpleContractB,
         LOCAL_SERVICE_NAME = TargetServiceB,
         REMOTE_SERVICE_NAME = N'InitiatorServiceB',
         PRIORITY_LEVEL = 8);

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft