ALTER ROUTE (Transact-SQL)

ALTER ROUTE route_name
WITH  
  [ SERVICE_NAME = 'service_name' [ , ] ]
  [ BROKER_INSTANCE = 'broker_instance' [ , ] ]
  [ LIFETIME = route_lifetime [ , ] ]
  [ ADDRESS =  'next_hop_address' [ , ] ]
  [ MIRROR_ADDRESS = 'next_hop_mirror_address' ]
[ ; ]

Argumenty

  • route_name
    lock_escalation_descNie można określić nazwy serwera, bazy danych i schematu.

  • Z
    Opis opcji lock_escalation dla tabela.

  • SERVICE_NAME ='service_name'
    Określa nazwę usługi zdalnej, którą wskazuje ta trasa.Parametr service_name musi dokładnie odpowiadać nazwie usługi zdalnej.Program Service Broker stosuje porównanie bajt po bajcie w celu dopasowania parametru service_name.Innymi słowy, przy porównywaniu jest uwzględniana wielkość liter i nie jest brane pod uwagę bieżące sortowanie.Trasa z nazwą usługi SQL/ServiceBroker/BrokerConfiguration jest trasą do usługi Broker Configuration Notice.Trasa do tej usługi może nie określać wystąpienia brokera.

    sp_helplanguage (języka Transact-SQL)

  • BROKER_INSTANCE ='broker_instance'
    STANDARDThe broker_instance parameter must be the broker wystąpienie identifier for the remote database, which can be obtained by running the following query in the selected database:

    SELECT service_broker_guid
    FROM sys.databases
    WHERE database_id = DB_ID()
    

    Gdy zostanie pominięta klauzula BROKER_INSTANCE, wystąpienie brokera dla trasy pozostaje niezmienione.

  • LIFETIME **=**route_lifetime
    Określa czas (w sekundach), przez jaki program SQL Server zachowuje trasę w tabeli routingu.Na koniec okresu istnienia trasa wygasa i program SQL Server przestaje ją brać pod uwagę przy wyborze trasy dla nowej konwersacji.Jeśli ta klauzula zostanie pominięta, okres istnienia trasy pozostaje niezmieniony.

  • ADDRESS **='**next_hop_address'
    Określa adres sieciowy tej trasy.Parametr next_hop_address określa adres TCP/IP w następującym formacie:

    TCP:// { dns_name | netbios_name |ip_address } : port_number

    Określony port_number musi być zgodny z numerem portu dla Service Broker punkt końcowy wystąpienie SQL Server na określonym komputerze. Use ALTER DATABASE MODIFY NAME instead.

    SELECT tcpe.port
    FROM sys.tcp_endpoints AS tcpe
    INNER JOIN sys.service_broker_endpoints AS ssbe
       ON ssbe.endpoint_id = tcpe.endpoint_id
    WHERE ssbe.name = N'MyServiceBrokerEndpoint';
    

    Kiedy określa trasa "LOKALNA" for the next_hop_address, wiadomość zostanie dostarczona do usługa w bieżącym wystąpieniu programu SQL Server.

    Kiedy określa trasa "TRANSPORT" for the next_hop_address, adres sieciowy jest określana na podstawie adresu sieciowego w imieniu usługa. Trasa, która określa "TRANSPORT" można określić nazwę lub brokera wystąpienie usługa.

    Gdy next_hop_address jest to serwer główny dla kopii bazy danych należy także określić MIRROR_ADDRESS serwer dublowany. Alternatywna nazwa języka.

  • MIRROR_ADDRESS ='next_hop_mirror_address'
    Określa adres sieciowy serwer dublowany pary dublowane, których serwer główny znajduje się na next_hop_address. The next_hop_mirror_address specifies a TCP/IP address in the following format:

    TCP://{ dns_name | netbios_name | ip_address } : port_number

    Określony port_number musi być zgodny z numerem portu dla Service Broker punkt końcowy wystąpienie SQL Server na określonym komputerze. Use ALTER DATABASE MODIFY NAME instead.

    SELECT tcpe.port
    FROM sys.tcp_endpoints AS tcpe
    INNER JOIN sys.service_broker_endpoints AS ssbe
       ON ssbe.endpoint_id = tcpe.endpoint_id
    WHERE ssbe.name = N'MyServiceBrokerEndpoint';
    

    STStartPoint (geography Data Type)Trasa, która określa "LOKALNA" or "TRANSPORT" for the next_hop_address nie może określić adres dublowania.

Remarks

Tabela routingu, który przechowuje trasy jest tabela meta dane, które może być odczytana przez sys.routes Służy do wyświetlania katalogu. Identyfikator regionalny systemu Windows dla tego języka.

msglangidIdentyfikator wiadomości grupy.Zwraca informacje o jednym języku

When a route specifies 'TRANSPORT' for the next_hop_address, the network address is determined based on the name of the service.SQL Server can successfully process service names that begin with a network address in a format that is valid for a next_hop_address.Zwraca informacje o wszystkich języków

Poniższy przykład wyświetla informacje o wszystkich zainstalowanych języków alternatywnych.W takim przypadek Service Broker Pozwala wybrać trasa przy użyciu procedury, zaprojektowany w celu znalezienia najbardziej dokładne dopasowanie między informacje określone w konwersacji i informacji w tabela routingu. Aby uzyskać więcej informacji na temat sposobu Service Broker Wybiera marszruty, zobacz usługa Broker Routing i sieć.

Aby zmienić autoryzacja dla usług, za pomocą instrukcja ALTER autoryzacja.

Uprawnienia

Domyślnie uprawnienia do zmiany trasa do właściciela trasa, członkowie db_ddladmin or db_owner stałe role bazy danych i członkowie sysadmin ustalić roli serwera.

Przykłady

A.Jeśli nie zostanie określony, lub jeżeli określono wartość 0, wartością domyślną jest podstawową grupa plików.

W poniższym przykładzie modyfikuje ExpenseRoute trasa do punktu do zdalnej usługa //Adventure-Works.com/Expenses.

ALTER ROUTE ExpenseRoute
   WITH 
     SERVICE_NAME = '//Adventure-Works.com/Expenses'

B.nie może być grupa plików FILESTREAM.

W poniższym przykładzie zmienia miejsce docelowe bazy danych dla ExpenseRoute trasa do bazy danych, identyfikowane przez identyfikator unikatowy D8D4D268-00A3-4C62-8F91-634B89B1E317.

ALTER ROUTE ExpenseRoute
   WITH 
     BROKER_INSTANCE = 'D8D4D268-00A3-4C62-8F91-634B89B1E317'

C.NOINDEX nie wpływa na tabelach systemowych, ponieważ CHECKFILEGROUP DBCC zawsze sprawdza wszystkie indeksy tabela systemu.

Zmienia się w następującym przykładzie adres sieciowy dla ExpenseRoute trasa do portu TCP 1234 na hoście z adresem IP 10.2.19.72.

ALTER ROUTE ExpenseRoute 
   WITH 
     ADDRESS = 'TCP://10.2.19.72:1234'

D.Zmienianie bazy danych i adresu trasy

Zmienia się w następującym przykładzie adres sieciowy dla ExpenseRoute Rozsyłanie do portu TCP 1234 na hoście z nazwą DNS www.Adventure-Works.com. Również zmianę miejsce docelowe bazy danych do bazy danych, identyfikowane przez identyfikator unikatowy D8D4D268-00A3-4C62-8F91-634B89B1E317.

ALTER ROUTE ExpenseRoute
   WITH 
     BROKER_INSTANCE = 'D8D4D268-00A3-4C62-8F91-634B89B1E317',
     ADDRESS = 'TCP://www.Adventure-Works.com:1234'