有人告诉我, DMF管理政策和条件可以做到这一点。有人知道如何实现这一点。
答案 0 :(得分:2)
是的,您可以通过基于策略的管理来完成此操作。您为 Facet 的过程创建条件,参数 @Name 为NOT LIKE
'sp_%'。然后,为条件创建政策,您可以按需或按计划强制执行此操作。
答案 1 :(得分:2)
点击确定以保存
制定政策。转到“管理” - >政策 - >创建新政策
单击确定以保存并启用策略
通过输入新查询来测试政策
CREATE PROCEDURE sp_test @LastName nvarchar(50), @FirstName nvarchar(50) AS
设置NOCOUNT ON; SELECT FirstName,LastName,Department 来自HumanResources.vEmployeeDepartmentHistory WHERE FirstName = @FirstName AND LastName = @LastName AND EndDate IS NULL; GO
结果如下:
>违反了政策'StoredProcNamingPolicy' > 'SQLSERVER:\ SQL \ DB01 \ DEFAULT \数据库\ MYDB \ StoredProcedures \ dbo.sp_test'。 此事务将被回滚。 政策条件:'@Name NOT LIKE'sp [_]%'' 政策说明:'' 其他帮助:'':'' 声明:'创建程序sp_test @LastName nvarchar(50), @FirstName nvarchar(50) AS
设置NOCOUNT ON; SELECT FirstName,LastNam ...'。 消息3609,级别16,状态1,过程sp_syspolicy_dispatch_event,第65行 交易在触发器中结束。批次已中止。