sp_syspolicy_add_policy_category_subscription (Transact-SQL)

将策略类别订阅添加到指定的数据库。

主题链接图标Transact-SQL 语法约定

语法

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

参数

  • [ @target_type= ] 'target_type'
    策略类别订阅的目标类型。target_type 的数据类型为 sysname 且是必需的,并且必须设置为“DATABASE”。

  • [ @target_object= ] 'target_object'
    将订阅类别的数据库的名称。 target_object 的数据类型为 sysname 且是必需的。

  • [ @policy_category= ] '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(失败)

注释

您必须在 msdb 系统数据库的上下文中运行 sp_syspolicy_add_policy_category_subscription。

如果您指定的策略类别不存在,将创建新的策略类别,并且在您执行存储过程时对于所有数据库都将托管订阅。如果您为新的类别清除托管的订阅,则该订阅将只适用于您指定为 target_object 的数据库。有关如何更改托管的订阅设置的详细信息,请参阅 sp_syspolicy_update_policy_category (Transact-SQL)

权限

此存储过程在其当前所有者的上下文中运行。

示例

下面的示例配置 AdventureWorks2008R2 数据库以便订阅名为“Table Naming Policies”的策略类别。

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

GO