关于存储过程命名加"sp_"前缀的问题
关于存储过程命名加"sp_"前缀的问题
扫一扫加作者微信
在过去几年中,把C放在每个声明的类前面令人困惑,如CProduct产品类。同样,许多SQL Server开发人员也困惑
于在每个存储过程的前面加上sp或类似的东西,这不是一个好方法。
SQL Server在所有的系统存储过程前面使用"sp_"前缀。所以用户会对sp_GetCustomerData是否为SQL Server
标准存储过程产生疑问。另外,当查找存储过程时,SQL Server会把带有sp_前缀的过程与没有该
前缀的过程区别对待。
如果使用这个前缀,但没有用该存储过程的数据库/拥有者来限定,SQL Server就会在当前范围
内查找,然后跳到主数据库中查找存储过程。没有sp_前缀,用户就会早一些得到错误。更糟糕的
是本地存储过程(在自己的数据库中创建)与系统存储过程有相同的名称和参数。
为了解决这个性能问题,可以将sp_改为"usp_",代表User Store Procedure, 如usp_GetCustomerData(),这样即可以区分用户和系统的存储过程,又能直观排序,特别是存储过程很多时发挥特殊作用。
扫一扫加作者微信
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网