首页 > 其他分享 >尽量不要以sp_为前缀命名存储过程

尽量不要以sp_为前缀命名存储过程

时间:2022-12-02 11:07:28浏览次数:70  
标签:存储 前缀 数据库 sp 查找 过程


今天在​​http://www.sqlmag.com/Article/ArticleID/23011/sql_server_23011.html​​​里,发现有提到一点,就是在
ms sql server里,在命名存储过程的时候,尽量避免要用sp_这样的前缀开头,文中的一个实验方法我试了下,也的确是这个回事,原因是如果假设你在数据库a里建立了存储过程,而以sp_x为前缀进行命名存储过程的话,会在寻找的时候,先到master数据库里去找的,这当然是找不到的哦。另外,查看微软的帮助说明可以看到如下的介绍:
   烈建议您不要创建以 sp_ 为前缀的存储过程。SQL Server 始终按照下列顺序查找以 sp_ 开头的存储过程:

  1. master 数据库中查找存储过程。
  2. 根据所提供的任何限定符(数据库名称或所有者)查找该存储过程。
  3. 如果未指定所有者,则使用 dbo 作为所有者查找该存储过程。

因此,虽然当前数据库中可能存在带 sp_ 前缀的用户创建的存储过程,但总会先检查 master 数据库(即使该存储过程已用数据库名称限定)。

标签:存储,前缀,数据库,sp,查找,过程
From: https://blog.51cto.com/u_14230175/5906220

相关文章