Replizieren von Schemaänderungen
Gilt für:SQL ServerAzure SQL Managed Instance
In diesem Thema wird beschrieben, wie Schemaänderungen in SQL Server mithilfe von SQL Server Management Studio oder Transact-SQL repliziert werden.
Wenn Sie die folgenden Schemaänderungen an einem veröffentlichten Artikel vornehmen, werden sie standardmäßig an Microsoft SQL Server-Abonnenten weitergegeben:
ALTER TABLE
ALTER VIEW
ALTER PROCEDURE
ALTER FUNCTION
ALTER TRIGGER
In diesem Thema
Vorbereitungen:
So replizieren Sie Schemaänderungen mit:
Vorbereitungen
Einschränkungen
- Die ALTER TABLE ... DROP COLUMN-Anweisung wird immer auf alle Abonnenten repliziert, deren Abonnement die zu löschenden Spalten enthält, auch wenn Sie die Replikation von Schemaänderungen deaktivieren.
Verwendung von SQL Server Management Studio
Wenn Sie keine Schemaänderungen für eine Publikation replizieren möchten, deaktivieren Sie die Replikation von Schemaänderungen im Dialogfeld "Publikationseigenschaften – <Publikation> ". Weitere Informationen zum Zugreifen auf dieses Dialogfeld finden Sie unter View and Modify Publication Properties.
So deaktivieren Sie die Replikation von Schemaänderungen
Legen Sie auf der Seite "Abonnementoptionen" des Dialogfelds "Publikationseigenschaften <- Publikation>" den Wert der Eigenschaft "Schemaänderungen replizieren" auf "False" fest.
Klickan Sie auf OK.
Wenn nur bestimmte Schemaänderungen weitergegeben werden sollen, legen Sie für die Eigenschaft vor der Schemaänderung Wahr und danach Falsch fest. Wenn umgekehrt die meisten Schemaänderungen weitergegeben werden sollen und nur eine bestimmte Änderung nicht repliziert werden soll, legen Sie für die Eigenschaft vor der entsprechenden Schemaänderung Falsch und anschließend wieder Wahr fest.
Verwenden von Transact-SQL
Sie können mithilfe gespeicherter Replikationsprozeduren angeben, ob diese Schemaänderungen repliziert werden sollen. Welche gespeicherte Prozedur Sie verwenden, hängt vom Typ der Veröffentlichung ab.
So erstellen Sie eine Momentaufnahme- oder Transaktionsveröffentlichung, die keine Schemaänderungen repliziert
- Führen Sie in publisher in der Publikationsdatenbank sp_addpublication (Transact-SQL) aus, und geben Sie einen Wert für
0
@replicate_ddl
. Weitere Informationen finden Sie unter Create a Publication.
So erstellen Sie eine Mergeveröffentlichung, die keine Schemaänderungen repliziert
- Führen Sie in publisher in der Publikationsdatenbank sp_addmergepublication (Transact-SQL) aus, und geben Sie einen Wert für .
@replicate_ddl
0
Weitere Informationen finden Sie unter Create a Publication.
So deaktivieren Sie vorübergehend die Replikation von Schemaänderungen in einer Momentaufnahme- oder Transaktionsveröffentlichung
Führen Sie für eine Publikation mit Replikation von Schemaänderungen sp_changepublication (Transact-SQL) aus, und geben Sie einen Wert für
@property
replicate_ddl
und einen Wert für0
@value
.Führen Sie den DDL-Befehl für das veröffentlichte Objekt aus.
(Optional) Aktivieren Sie die Replikation von Schemaänderungen, indem Sie sp_changepublication (Transact-SQL) ausführen und einen Wert für
1
replicate_ddl
@property
@value
.
So deaktivieren Sie vorübergehend die Replikation von Schemaänderungen in einer Mergeveröffentlichung
Führen Sie für eine Publikation mit Replikation von Schemaänderungen sp_changemergepublication (Transact-SQL) aus, und geben Sie einen Wert für
@property
replicate_ddl
und einen Wert für0
@value
.Führen Sie den DDL-Befehl für das veröffentlichte Objekt aus.
(Optional) Aktivieren Sie die Replikation von Schemaänderungen, indem Sie sp_changemergepublication (Transact-SQL) ausführen und einen Wert für
1
replicate_ddl
@property
@value
.
Weitere Informationen
Vornehmen von Schemaänderungen in Veröffentlichungsdatenbanken
Vornehmen von Schemaänderungen in Veröffentlichungsdatenbanken
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für