Freigeben über


Vorgehensweise: Automatisches Generieren einer Reihe von Verknüpfungsfiltern zwischen Mergeartikeln (SQL Server Management Studio)

Mithilfe des Assistenten für neue Veröffentlichung auf der Seite Tabellenzeilen filtern oder des Dialogfeldes Veröffentlichungseigenschaften - <Veröffentlichung> auf der Seite Zeilen filtern können Sie eine Reihe von Verknüpfungsfiltern automatisch generieren. Weitere Informationen zur Verwendung des Assistenten sowie zum Zugriff auf das Dialogfeld finden Sie unter Vorgehensweise: Erstellen einer Veröffentlichung und Definieren von Artikeln (SQL Server Management Studio) und Vorgehensweise: Anzeigen und Ändern der Eigenschaften von Veröffentlichungen und Artikeln (SQL Server Management Studio).

HinweisHinweis

Wenn Sie nach dem Initialisieren von Abonnements für die Veröffentlichung automatisch eine Reihe von Verknüpfungsfiltern im Dialogfeld Veröffentlichungseigenschaften - <Veröffentlichung> generieren, müssen Sie einen neuen Snapshot generieren und nach der Änderung alle Abonnements erneut initialisieren. Weitere Informationen zu den Anforderungen für Eigenschaftenänderungen finden Sie unter Ändern von Veröffentlichungs- und Artikeleigenschaften.

Verknüpfungsfilter können manuell für eine Gruppe von Tabellen erstellt werden. Die Filter können auch automatisch durch die Replikation anhand der Primärschlüssel/Fremdschlüssel-Beziehungen generiert werden, die für die Tabellen definiert sind. Weitere Informationen zum manuellen Erstellen von Verknüpfungsfiltern finden Sie unter Vorgehensweise: Definieren und Ändern eines Verknüpfungsfilters zwischen Mergeartikeln (SQL Server Management Studio).

So generieren Sie automatisch eine Reihe von Verknüpfungsfiltern zwischen Mergeartikeln

  1. Klicken Sie im Assistenten für neue Veröffentlichung auf der Seite Tabellenzeilen filtern oder im Dialogfeld Veröffentlichungseigenschaften - <Veröffentlichung> auf der Seite Zeilen filtern auf Hinzufügen, und klicken Sie dann auf Filter automatisch generieren.

    HinweisHinweis

    Beim automatischen Generieren von Filtern werden alle vorhandenen Zeilenfilter oder Verknüpfungsfilter in der Veröffentlichung gelöscht. Sie können nach dem automatischen Generieren einer Reihe von Filtern weitere Filter hinzufügen.

  2. Folgen Sie zum Erstellen eines Zeilenfilters dem Verfahren im Dialogfeld Filter generieren. Der Zeilenfilter wird dann basierend auf den aufgeführt automatisch auf die Tabellen ausgeweitet, die mit der gefilterten Tabelle verbunden sind.

    1. Wählen Sie im Dropdown-Listenfeld eine Tabelle aus, die Sie filtern möchten.

    2. Erstellen Sie im Textfeld Filteranweisung eine Filteranweisung. Sie können den Text direkt in das Textfeld eingeben, und Sie können Spalten auch mit Drag und Drop aus dem Listenfeld Spalten einfügen.

      Der Textbereich Filteranweisung enthält den Standardtext im folgenden Format:

      SELECT <published_columns> FROM [tableowner].[tablename] WHERE
      

      Der Standardtext kann nicht geändert werden. Geben Sie die Filterklausel für einen statischen Zeilenfilter oder einen parametrisierten Zeilenfilter nach dem WHERE-Schlüsselwort mithilfe der standardmäßigen SQL-Syntax ein. Die vollständige Filterklausel für einen parametrisierten Zeilenfilter würde wie folgt aussehen:

      SELECT <published_columns> FROM [HumanResources].[Employee] WHERE LoginID = SUSER_SNAME()
      

      Verwenden Sie einen zweiteiligen Namen für die WHERE-Klausel, drei- oder vierteilige Namen werden nicht unterstützt.

    3. Geben Sie Filteroptionen an.

      Wählen Sie die Option, die dem Verfahren entspricht, mit dem Daten an Abonnenten weitergegeben werden: Eine Zeile aus dieser Tabelle wird an mehrere Abonnements gesendet oder Eine Zeile aus dieser Tabelle wird nur an ein Abonnement gesendet.Wenn Sie Eine Zeile aus dieser Tabelle wird nur an ein Abonnement gesendet auswählen, kann die Mergereplikation die Leistung optimieren, da weniger Metadaten gespeichert und verarbeitet werden. Sie müssen jedoch sicherstellen, dass die Daten so partitioniert werden, dass eine Zeile nicht für mehrere Abonnenten repliziert werden kann. Weitere Informationen finden Sie im Abschnitt zum Festlegen von Partitionsoptionen unter Parametrisierte Zeilenfilter.

  3. Klicken Sie auf OK.

    Der angegebene Filter wird analysiert und für die Tabelle in der SELECT-Klausel ausgeführt. Falls die Filteranweisung Syntaxfehler oder andere Probleme enthält, werden Sie benachrichtigt, und Sie können die Filteranweisung bearbeiten.

    Nach der Analyse der Anweisung erstellt die Replikation die nötigen Verknüpfungsfilter und zeigt sie auf der Seite Tabellenzeilen filtern oder der Seite Zeilen filtern im Bereich Gefilterte Tabellen an. Wenn Sie Filter im Assistenten für neue Veröffentlichung generieren und noch nicht den Verteiler für den Verleger konfiguriert haben, für den dieser Assistent ausgeführt wird, werden Sie zum Konfigurieren des Verteilers aufgefordert.

  4. Wenn Sie sich im Dialogfeld Veröffentlichungseigenschaften - <Veröffentlichung> befinden, klicken Sie auf OK, um Ihre Angaben zu speichern und das Dialogfeld zu schließen.

So ändern Sie einen automatisch generierten Filter

  1. Wählen Sie im Assistenten für neue Veröffentlichung auf der Seite Tabellenzeilen filtern oder im Dialogfeld Veröffentlichungseigenschaften - <Veröffentlichung< auf der Seite Zeilen filtern im Bereich Gefilterte Tabellen einen Filter aus, und klicken Sie dann auf Bearbeiten.

  2. Ändern Sie den Filter im Dialogfeld Filter bearbeiten oder Verknüpfung bearbeiten.

  3. Klicken Sie auf OK.

So löschen Sie einen automatisch generierten Filter

  • Wählen Sie im Assistenten für neue Veröffentlichung auf der Seite Tabellenzeilen filtern oder im Dialogfeld Veröffentlichungseigenschaften - <Veröffentlichung< auf der Seite Zeilen filtern im Bereich Gefilterte Tabellen einen Filter aus, und klicken Sie dann auf Löschen.