sp_check_dynamic_filters (Transact-SQL)

適用於:SQL ServerAzure SQL 受控執行個體

顯示發行集的參數化資料列篩選屬性資訊,特別是用來為發行集產生篩選資料分割的函式,以及發行集是否符合使用預先計算資料分割的限定性。 這個預存程式會在發行集資料庫的發行者端執行。

Transact-SQL 語法慣例

語法

sp_check_dynamic_filters [ @publication = ] 'publication'  

引數

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

結果集

資料行名稱 資料類型 描述
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 表示此函式用於動態篩選。

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_check_dynamic_filters用於合併式複寫。

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

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

權限

只有系統管理員 固定伺服器角色或 db_owner 固定資料庫角色的成員 才能執行 sp_check_dynamic_filters

另請參閱

使用參數化篩選管理合併式發行集的資料分割
sp_check_join_filter (Transact-SQL)
sp_check_subset_filter (Transact-SQL)