什么时候应该在SQL Server 2008中使用存储过程而不是函数?

时间:2014-03-14 11:34:02

标签: sql-server-2008 function stored-procedures

由于我在何时使用存储过程而不是函数的情况下不太清楚,

我有一个函数已经被使用的场景,但由于在存储过程中执行需要很长时间,现在我可以用一个过程替换这个函数(它返回一个字符串)吗?

任何人都可以解释一下用存储过程替换函数会发生什么吗?

提前致谢。

1 个答案:

答案 0 :(得分:2)

任何一个都没有神奇的性能提升。如果它们包含相同的代码,它们将具有相同的性能。

我会说,除非或直到你达到功能限制 - 将其保留为功能 - 例如如果你想真正改变数据库状态。

函数更易于组合 - 您可以直接从其他语句(如SELECT)中调用它们 - 而必须显式调用存储过程。