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

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

  1. Legen Sie auf der Seite "Abonnementoptionen" des Dialogfelds "Publikationseigenschaften <- Publikation>" den Wert der Eigenschaft "Schemaänderungen replizieren" auf "False" fest.

  2. 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

  1. 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

  1. Führen Sie in publisher in der Publikationsdatenbank sp_addmergepublication (Transact-SQL) aus, und geben Sie einen Wert für .@replicate_ddl0 Weitere Informationen finden Sie unter Create a Publication.

So deaktivieren Sie vorübergehend die Replikation von Schemaänderungen in einer Momentaufnahme- oder Transaktionsveröffentlichung

  1. Führen Sie für eine Publikation mit Replikation von Schemaänderungen sp_changepublication (Transact-SQL) aus, und geben Sie einen Wert für @propertyreplicate_ddl und einen Wert für 0@value.

  2. Führen Sie den DDL-Befehl für das veröffentlichte Objekt aus.

  3. (Optional) Aktivieren Sie die Replikation von Schemaänderungen, indem Sie sp_changepublication (Transact-SQL) ausführen und einen Wert für 1replicate_ddl@property@value.

So deaktivieren Sie vorübergehend die Replikation von Schemaänderungen in einer Mergeveröffentlichung

  1. Führen Sie für eine Publikation mit Replikation von Schemaänderungen sp_changemergepublication (Transact-SQL) aus, und geben Sie einen Wert für @propertyreplicate_ddl und einen Wert für 0@value.

  2. Führen Sie den DDL-Befehl für das veröffentlichte Objekt aus.

  3. (Optional) Aktivieren Sie die Replikation von Schemaänderungen, indem Sie sp_changemergepublication (Transact-SQL) ausführen und einen Wert für 1replicate_ddl@property@value.

Weitere Informationen

Vornehmen von Schemaänderungen in Veröffentlichungsdatenbanken
Vornehmen von Schemaänderungen in Veröffentlichungsdatenbanken