sp_changemergefilter (Transact-SQL)
Gilt für: SQL Server
Ändert einige Mergefiltereigenschaften. Diese gespeicherte Prozedur wird im Publisher in der Publikationsdatenbank ausgeführt.
Transact-SQL-Syntaxkonventionen
Syntax
sp_changemergefilter
[ @publication = ] N'publication'
, [ @article = ] N'article'
, [ @filtername = ] N'filtername'
, [ @property = ] N'property'
, [ @value = ] N'value'
[ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
[ , [ @force_reinit_subscription = ] force_reinit_subscription ]
[ ; ]
Argumente
[ @publication = ] N'Publikation'
Der Name der Veröffentlichung. @publication ist "sysname" ohne Standard.
[ @article = ] N'article'
Der Name des Artikels. @article ist "sysname" ohne Standard.
[ @filtername = ] N'filtername'
Der aktuelle Name des Filters. @filtername ist "sysname" ohne Standard.
[ @property = ] N'property'
Der Name der zu ändernden Eigenschaft. @property ist "sysname" ohne Standard.
[ @value = ] N'value'
Der neue Wert für die angegebene Eigenschaft. @value ist nvarchar(1000), ohne Standard.
In der folgenden Tabelle werden die Eigenschaften von Artikeln und die Werte für diese Eigenschaften beschrieben.
Eigenschaft | Wert | Beschreibung |
---|---|---|
filter_type |
1 |
Joinfilter. Diese Option ist erforderlich, um SQL Server Compact-Abonnenten zu unterstützen. |
2 |
Logische Datensatzbeziehung. | |
3 |
Ein Joinfilter ist ebenfalls eine logische Datensatzbeziehung. | |
filtername |
Name des Filters. | |
join_articlename |
Name des Join-Artikels. | |
join_filterclause |
Filterklausel | |
join_unique_key |
true |
Der Join betrifft einen eindeutigen Schlüssel. |
false |
Die Verknüpfung ist nicht auf einem eindeutigen Schlüssel vorhanden. |
[ @force_invalidate_snapshot = ] force_invalidate_snapshot
Bestätigt, dass die von dieser gespeicherten Prozedur ausgeführte Aktion möglicherweise eine vorhandene Momentaufnahme ungültig macht. @force_invalidate_snapshot ist bit, mit einem Standardwert von 0
.
0
Gibt an, dass Änderungen am Seriendruckartikel nicht dazu führen, dass die Momentaufnahme ungültig ist. Wenn die gespeicherte Prozedur erkennt, dass die Änderungen eine neue Momentaufnahme erfordern, tritt ein Fehler auf und es werden keine Änderungen vorgenommen.1
bedeutet, dass Änderungen am Seriendruckartikel dazu führen können, dass die Momentaufnahme ungültig ist, und wenn vorhandene Abonnements vorhanden sind, die eine neue Momentaufnahme erfordern würden, erteilen Sie die Berechtigung, dass die vorhandene Momentaufnahme als veraltet markiert und eine neue Momentaufnahme generiert wird.
[ @force_reinit_subscription = ] force_reinit_subscription
Bestätigt, dass die von dieser gespeicherten Prozedur ausgeführte Aktion möglicherweise das erneute Initialisieren von vorhandenen Abonnements erfordert. @force_reinit_subscription ist bit, mit einem Standardwert von 0
.
0
Gibt an, dass Änderungen am Seriendruckartikel nicht dazu führen, dass das Abonnement erneut initialisiert wird. Wenn die gespeicherte Prozedur erkennt, dass die Änderung die Neuinitialisierung vorhandener Abonnements erfordert, tritt ein Fehler auf, und es werden keine Änderungen durchgeführt.1
bedeutet, dass Änderungen am Seriendruckartikel vorhandene Abonnements erneut initialisieren und die Berechtigung für die Erneute Initialisierung des Abonnements erteilen.
Rückgabecodewerte
0
(erfolgreich) oder 1
Fehler.
Hinweise
sp_changemergefilter
wird in der Seriendruckreplikation verwendet.
Das Ändern des Filters für einen Mergeartikel erfordert, dass eine vorhandene Momentaufnahme erneut erstellt wird. Dies wird durch Festlegen der @force_invalidate_snapshot auf 1
. Wenn es Abonnements für diesen Artikel gibt, müssen die Abonnements erneut initialisiert werden, was durch Festlegen der @force_reinit_subscription 1
erfolgt.
Um logische Datensätze zu verwenden, müssen die Publikation und die Artikel mehrere Anforderungen erfüllen. Weitere Informationen finden Sie unter Gruppieren von Änderungen an verknüpften Zeilen mithilfe von logischen Datensätzen.
Berechtigungen
Nur Mitglieder der festen Serverrolle sysadmin oder db_owner feste Datenbankrolle können ausgeführt werden sp_changemergefilter
.