MYSQL函数中的命名函数是否具有额外的性能

时间:2010-11-12 14:18:52

标签: sql sql-server-2005 naming-conventions

这里有人提到我们应该避免在MS SQL服务器中命名存储过程,如sp_XXX
因为在检查时对SQL服务器的添加时间确实存在系统sotred程序这样命名。因为所有系统存储的proc都以sp_开头。

现在我想知道在MSSQL中使用函数的情况,在查找系统函数时,像fn这样的命名函数是否需要额外的时间来使用SQL?

2 个答案:

答案 0 :(得分:5)

不,我不这么认为。

找到以下主题:

http://bytes.com/topic/sql-server/answers/78872-udf-starting-fn_

  

没有。要调用系统提供的[用户定义的功能]   需要使用::,这就是SQL   服务器寻找。所有系统提供   UDF是表函数,如标量   系统功能根本不是UDF。

希望这有帮助

答案 1 :(得分:3)

对于函数并不重要,但建议 NOT 为存储过程使用 sp _ 的前缀,因为它定义了系统存储过程并可能导致额外的在MASTER数据库中查找。

  

sp_前缀是为系统保留的   存储过程和任何存储的   具有sp_前缀的过程将   在MASTER中导致额外的查找   数据库。还有另外一点   请注意,如果存储过程使用   同名,在用户数据库中作为系统   存储过程在master数据库中,   用户数据库中的存储过程   将永远不会作为SQL Server执行   总是先看主人   数据库并将执行该数据库   而不是用户数据库中的一个。

http://furrukhbaig.wordpress.com/2007/08/22/stored-procedures-factssheet/

http://msdn.microsoft.com/en-us/library/dd172115.aspx