sp_check_subset_filter (Transact-SQL)

S’applique à :SQL ServerAzure SQL Managed Instance

Est utilisée pour vérifier une clause de filtre en fonction d'une table, afin de déterminer si cette clause est valide pour la table. Cette procédure stockée renvoie des informations sur le filtre fourni, y compris si le filtre peut être utilisé avec des partitions précalculées. Cette procédure stockée est exécutée au niveau du serveur de publication dans la base de données contenant la publication.

Conventions de la syntaxe Transact-SQL

Syntaxe

  
sp_check_subset_filter [ @filtered_table = ] 'filtered_table'  
        , [ @subset_filterclause = ] 'subset_filterclause'  
    [ , [ @has_dynamic_filters = ] has_dynamic_filters OUTPUT ]  

Arguments

[ @filtered_table = ] 'filtered_table' Nom d’une table filtrée. filtered_table est nvarchar(400), sans valeur par défaut.

[ @subset_filterclause = ] 'subset_filterclause' Clause de filtre en cours de test. subset_filterclause est nvarchar(1000), sans valeur par défaut.

[ @has_dynamic_filters = ] has_dynamic_filters Indique si la clause de filtre est un filtre de ligne paramétré. has_dynamic_filters est bit, avec la valeur par défaut NULL et est un paramètre de sortie. Retourne la valeur 1 lorsque la clause de filtre est un filtre de lignes paramétré.

Jeux de résultats

Nom de la colonne Type de données Description
can_use_partition_groups bit Est si la publication est éligible pour l’utilisation de partitions précalculées ; où 1 signifie que les partitions précalculées peuvent être utilisées, et 0 signifie qu’elles ne peuvent pas être utilisées.
has_dynamic_filters bit Indique si la clause de filtre fournie inclut au moins un filtre de ligne paramétré ; où 1 signifie qu’un filtre de ligne paramétré est utilisé, et 0 signifie qu’une telle fonction n’est pas utilisée.
dynamic_filters_function_list nvarchar(500) Listes des fonctions de la clause de filtre qui filtrent dynamiquement un article, où chaque fonction est séparée par un point-virgule.
uses_host_name bit Si la fonction HOST_NAME() est utilisée dans la clause de filtre, où 1 signifie que cette fonction est présente.
uses_suser_sname bit Si la fonction SUSER_SNAME() est utilisée dans la clause de filtre, où 1 signifie que cette fonction est présente.

Codet de retour

0 (réussite) ou 1 (échec)

Notes

sp_check_subset_filter est utilisé dans la réplication de fusion.

sp_check_subset_filter peut être exécuté sur n’importe quelle table même si la table n’est pas publiée. Cette procédure stockée peut être utilisée pour vérifier une clause de filtre avant de définir un article filtré.

Autorisations

Seuls les membres du rôle serveur fixe sysadmin ou db_owner rôle de base de données fixe peuvent exécuter sp_check_subset_filter.

Voir aussi

Optimiser les performances des filtres paramétrés avec des partitions précalculées