sp_changesubscription (Transact-SQL)

Gilt für:SQL ServerAzure SQL Managed Instance

Ändert die Eigenschaften eines Momentaufnahme- oder Transaktionspushabonnements bzw. eines Pullabonnements, das an einem verzögerten Update über eine Warteschlange beteiligt ist. Verwenden Sie sp_change_subscription_properties (Transact-SQL), um die Eigenschaften aller anderen Arten von Pullabonnements zu ändern. sp_changesubscription wird im Publisher in der Publikationsdatenbank ausgeführt.

Wichtig

Beim Konfigurieren eines Verlegers mit einem Remoteverteiler werden die Werte, die für alle Parameter, einschließlich job_login und job_password, bereitgestellt werden, als Nur-Text an den Verteiler gesendet. Sie sollten die Verbindung zwischen dem Verleger und dem zugehörigen Remoteverteiler verschlüsseln, bevor Sie diese gespeicherte Prozedur ausführen. Weitere Informationen finden Sie unter Aktivieren von verschlüsselten Verbindungen zur Datenbank-Engine (SQL Server-Konfigurations-Manager).

Transact-SQL-Syntaxkonventionen

Syntax

  
sp_changesubscription [ @publication = ] 'publication'  
        , [ @article = ] 'article'  
        , [ @subscriber = ] 'subscriber'  
        , [ @destination_db = ] 'destination_db'  
        , [ @property = ] 'property'  
        , [ @value = ] 'value'  
    [ , [ @publisher = ] 'publisher' ]  

Argumente

[ @publication = ] 'publication' Ist der Name der zu ändernden Publikation. Publikationist sysname, ohne Standard

[ @article = ] 'article' Ist der Name des zu ändernden Artikels. Artikel ist "sysname" ohne Standard.

[ @subscriber = ] 'subscriber' Ist der Name des Abonnenten. subscriber is sysname, with no default.

[ @destination_db = ] 'destination_db' Ist der Name der Abonnementdatenbank. destination_db ist "sysname" ohne Standard.

[ @property = ] 'property' Ändert sich die Eigenschaft für das angegebene Abonnement. property is nvarchar(30), and can be one of the values in the table.

[ @value = ] 'value' Ist der neue Wert für die angegebene Eigenschaft. wert ist nvarchar(4000), und kann einer der Werte in der Tabelle sein.

Eigenschaft Wert Beschreibung
distrib_job_login Melden Sie sich für das Microsoft Windows-Konto an, unter dem der Agent ausgeführt wird.
distrib_job_password Kennwort für das Windows-Konto, unter dem der Agent ausgeführt wird.
subscriber_catalog Katalog, der beim Herstellen einer Verbindung mit dem OLE DB-Anbieter verwendet werden soll. Diese Eigenschaft ist nur für Nicht-Microsoft SQL Server-Abonnenten gültig.
subscriber_datasource Name der Datenquelle im vom OLE DB-Anbieter unterstützten Format. Diese Eigenschaft ist nur für Nicht-SQL Server-Abonnenten gültig.
subscriber_location Speicherort der Datenbank, wie vom OLE DB-Anbieter verstanden. Diese Eigenschaft ist nur für Nicht-SQL Server-Abonnenten gültig.
subscriber_login Anmeldename auf dem Abonnenten.
subscriber_password Sicheres Kennwort für den angegebenen Anmeldenamen.
subscriber_security_mode 1 Verwendung der Windows-Authentifizierung für die Verbindung mit dem Abonnenten.
0 Verwenden Sie die SQL Server-Authentifizierung beim Herstellen einer Verbindung mit dem Abonnenten.
subscriber_provider Eindeutiger Programmbezeichner (PROGID, Programmatic Identifier), mit dem der OLE DB-Anbieter für die Nicht-SQL Server-Datenquelle registriert wird. Diese Eigenschaft ist nur für Nicht-SQL Server-Abonnenten gültig.
subscriber_providerstring Für den OLE DB-Anbieter spezifische Verbindungszeichenfolge, die die Datenquelle identifiziert. Diese Eigenschaft ist nur für Nicht-SQL Server-Abonnenten gültig.
subscriptionstreams Die pro Verteilungs-Agent zulässige Anzahl von Verbindungen, um Batches von Änderungen parallel auf einen Abonnenten anzuwenden. Für SQL Server-Herausgeber wird ein Wertebereich von 1 bis 64 unterstützt. Diese Eigenschaft muss 0 für Nicht-SQL Server-Abonnenten, Oracle-Herausgeber oder Peer-to-Peer-Abonnements sein.
subscriber_type 1 ODBC-Datenquellenserver
3 OLE DB-Anbieter
memory_optimized bit Gibt an, dass das Abonnement speicheroptimierte Tabellen unterstützt. memory_optimized ist Bit, wobei 1 gleich "true" ist (das Abonnement unterstützt speicheroptimierte Tabellen).

[ @publisher = ] 'publisher' Gibt einen Nicht-SQL Server-Herausgeber an. Publisher ist "sysname" mit dem Standardwert NULL.

Hinweis

Publisher sollte für einen SQL Server-Herausgeber nicht angegeben werden.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Hinweise

sp_changesubscription wird in Momentaufnahme- und Transaktionsreplikation verwendet.

sp_changesubscription können nur verwendet werden, um die Eigenschaften von Pushabonnements oder Pullabonnements zu ändern, die an der Aktualisierung der Transaktionsreplikation in der Warteschlange beteiligt sind. Verwenden Sie sp_change_subscription_properties (Transact-SQL), um die Eigenschaften aller anderen Arten von Pullabonnements zu ändern.

Nach dem Ändern des Anmeldenamens oder Kennworts eines Agents müssen Sie den Agent beenden und neu starten, damit die Änderungen in Kraft treten.

Berechtigungen

Nur Mitglieder der festen Serverrolle sysadmin oder db_owner festen Datenbankrolle können sp_changesubscription ausgeführt werden.

Weitere Informationen

sp_addsubscription (Transact-SQL)
sp_dropsubscription (Transact-SQL)