sp_check_join_filter (Transact-SQL)

Gilt für:SQL ServerAzure SQL Managed Instance

Wird dazu verwendet, einen Joinfilter zwischen zwei Tabellen zu überprüfen, um festzustellen, ob die Joinfilterklausel gültig ist. Diese gespeicherte Prozedur gibt außerdem Informationen zum angegebenen Joinfilter zurück, u. a. mit dem Hinweis, ob der Filter für die angegebene Tabelle zusammen mit vorausberechneten Partitionen verwendet werden kann. Diese gespeicherte Prozedur wird auf dem Verleger für die Veröffentlichung ausgeführt. Weitere Informationen finden Sie unter Optimieren Parametrisierter Filter-Leistung mit Vorausberechneten Partitionen .

Transact-SQL-Syntaxkonventionen

Syntax

  
sp_check_join_filter [ @filtered_table = ] 'filtered_table'  
        , [@join_table = ] 'join_table'  
        , [ @join_filterclause = ] 'join_filterclause'  

Argumente

[ @filtered_table = ] 'filtered_table' Der Name einer gefilterten Tabelle. filtered_table ist nvarchar(400) ohne Standardwert.

[ @join_table = ] 'join_table' Der Name einer Tabelle, die mit filtered_table verknüpft wird. join_table ist nvarchar(400) ohne Standardwert.

[ @join_filterclause = ] 'join_filterclause' Ist die Joinfilterklausel, die getestet wird. join_filterclause ist nvarchar(1000) ohne Standardwert.

Resultsets

Spaltenname Datentyp BESCHREIBUNG
can_use_partition_groups bit Ist, wenn die Veröffentlichung für vorberechnete Partitionen qualifiziert ist; wobei 1 bedeutet, dass vorkompilierte Partitionen verwendet werden können, und 0 bedeutet, dass sie nicht verwendet werden können.
has_dynamic_filters bit Ist, wenn die angegebene Filterklausel mindestens eine parametrisierte Filterfunktion enthält; wobei 1 bedeutet, dass eine parametrisierte Filterfunktion verwendet wird, und 0 bedeutet, dass eine solche Funktion nicht verwendet wird.
dynamic_filters_function_list nvarchar(500) Liste der Funktionen in der Filterklausel, die einen parametrisierten Filter für einen Artikel definieren. Dabei sind die einzelnen Funktionen durch ein Semikolon voneinander getrennt.
uses_host_name bit Wenn die HOST_NAME() -Funktion in der Filterklausel verwendet wird, bedeutet 1 , dass diese Funktion vorhanden ist.
uses_suser_sname bit Wenn die SUSER_SNAME() -Funktion in der Filterklausel verwendet wird, bedeutet 1 , dass diese Funktion vorhanden ist.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Bemerkungen

sp_check_join_filter wird bei der Mergereplikation verwendet.

sp_check_join_filter können für alle verwandten Tabellen ausgeführt werden, auch wenn sie nicht veröffentlicht werden. Mit dieser gespeicherten Prozedur kann eine Joinfilterklausel überprüft werden, bevor ein Joinfilter zwischen zwei Artikeln definiert wird.

Berechtigungen

Nur Mitglieder der festen Serverrolle sysadmin oder db_owner festen Datenbankrolle können sp_check_join_filter ausführen.

Weitere Informationen

Gespeicherte Replikationsprozeduren (Transact-SQL)