sp_check_dynamic_filters (Transact-SQL)

顯示發行集之參數化資料列篩選屬性的相關資訊,尤其是用來產生發行集篩選資料分割的函數,以及發行集是否適合使用預先計算的資料分割。這個預存程序執行於發行集資料庫的發行者端。

主題連結圖示Transact-SQL 語法慣例

語法

sp_check_dynamic_filters [ @publication = ] 'publication'

引數

  • [ @publication= ] 'publication'
    這是發行集的名稱。publicationsysname,沒有預設值。

傳回碼值

0 (成功) 或 1 (失敗)

結果集

資料行名稱 資料類型 描述

can_use_partition_groups

bit

指出發行集是否能夠使用預先計算的資料分割;其中 1 表示可以使用預先計算的資料分割;而 0 表示不能使用。

has_dynamic_filters

bit

這是指是否在發行集中定義了至少一個參數化資料列篩選;其中 1 表示有一或多項參數化資料列篩選存在,而 0 表示沒有動態篩選。

dynamic_filters_function_list

nvarchar(500)

用來篩選發行集中的發行項之函數清單,每個函數都用分號來分開。

validate_subscriber_info

nvarchar(500)

用來篩選發行集中的發行項之函數清單,每個函數都用加號 (+) 來分開。

uses_host_name

bit

指出 HOST_NAME() 函數是否用於參數化資料列篩選,1 表示利用這個函數來進行動態篩選。

uses_suser_sname

bit

指出 SUSER_SNAME() 函數是否用於參數化資料列篩選,1 表示利用這個函數來進行動態篩選。

備註

sp_check_dynamic_filters 用於合併式複寫中。

如果已定義發行集來使用預先計算的資料分割,sp_check_dynamic_filters 會檢查預先計算之資料分割的任何違反限制的情況。如果找到任何違反限制的情況,便會傳回錯誤。如需詳細資訊,請參閱<使用預先計算的資料分割最佳化參數化篩選效能>。

如果已將發行集定義為有參數化資料列篩選,但找不到參數化資料列篩選,便會傳回錯誤。

權限

只有系統管理員 (sysadmin) 固定伺服器角色和 db_owner 固定資料庫角色的成員,才能夠執行 sp_check_dynamic_filters

請參閱

參考

sp_check_join_filter (Transact-SQL)
sp_check_subset_filter (Transact-SQL)

其他資源

How to: Manage Partitions for a Merge Publication with Parameterized Filters (Replication Transact-SQL Programming)

說明及資訊

取得 SQL Server 2005 協助