第十八章——基于策略的管理(2)——限制数据库对象
前言:
在实际环境中,会有很多开发人员正在对一个项目编写SQL脚本,此时需要对对象的命名经行强制限定。完成这个任务可以使用强制的一些策略来实现。
合理的命名对象并不仅仅是处于维护需要,有时候也能影响性能,限定数据库的命名对象将能避免一些性能问题。通常SP_是用于SQLServer系统存储过程,但是一些程序员会尝试将其作为自定义存储过程的命名。
下面我们将演示如何使用策略,来限定SP_前缀,让其只属于SQLServer系统存储过程的命名规则。
准备工作:
需要有sysadmin角色的权限登录。
步骤:
1、 连到SQLServer,并右键【策略】,点击【新建策略】,如图:
2、 输入策略名:Stored Procedure Naming Convertion,并选择【新建条件】:
3、 输入Stored Procedure Naming作为名称,并在【方面】中选择【多部分名称】
然后输入图中的表达式:
4、 点击【确定】以后,在【评估模式】中选择【更改时:禁止】,然后点击启用。
5、 现在尝试创建自定义存储过程:
这里有个小插曲,原著上并不提及,当我没有在第五步中添加use AdventureWorks的时候,直接执行会报错:
USE AdventureWorksGOCREATE PROC usp_SelectProcAS SELECT 1 GO