Поделиться через


sp_syspolicy_add_policy_category_subscription (Transact-SQL)

Область применения: SQL Server

Добавляет подписку на категорию политики для указанной базы данных.

Соглашения о синтаксисе Transact-SQL

Синтаксис

sp_syspolicy_add_policy_category_subscription
    [ @target_type = ] N'target_type'
      , [ @target_object = ] N'target_object'
      , [ @policy_category = ] N'policy_category'
    [ , [ @policy_category_subscription_id = ] policy_category_subscription_id OUTPUT ]
[ ; ]

Аргументы

[ @target_type = ] N'target_type'

Целевой тип подписки категории. @target_type является sysname, является обязательным и должен иметь значение DATABASE.

[ @target_object = ] N'target_object'

Имя базы данных, которая будет подписываться на категорию. @target_object является sysname и является обязательным.

[ @policy_category = ] N'policy_category'

Имя категории политики для подписки. @policy_category — sysname и является обязательным.

Чтобы получить значения для @policy_category, запросите системное msdb.dbo.syspolicy_policy_categories представление.

[ @policy_category_subscription_id = ] policy_category_subscription_id

Идентификатор подписки категории. @policy_category_subscription_id является int и возвращается как OUTPUT.

Значения кода возврата

0 (успешно) или 1 (сбой).

Замечания

Необходимо выполнить sp_syspolicy_add_policy_category_subscription в контексте msdb системной базы данных.

Если указать категорию политики, которая не существует, создается новая категория политики, а подписка требуется для всех баз данных при выполнении хранимой процедуры. Если вы очистите требуемую подписку для новой категории, подписка применяется только для базы данных, указанной в качестве target_object. Дополнительные сведения об изменении параметра обязательной подписки см. в sp_syspolicy_update_policy_category.

Разрешения

Эта хранимая процедура выполняется в контексте текущего владельца хранимой процедуры.

Примеры

В следующем примере настраивается указанная база данных для подписки на категорию политики, которая называется Table Naming Policies.

EXEC msdb.dbo.sp_syspolicy_add_policy_category_subscription
    @target_type = N'DATABASE',
    @target_object = N'AdventureWorks2022',
    @policy_category = N'Table Naming Policies';
GO