【发布时间】:2014-03-14 20:02:44
【问题描述】:
由于我不太清楚何时使用存储过程而不是函数,
我有一个场景,一个函数已经被使用,但是由于在存储过程中执行需要很长时间,现在我可以用一个过程替换这个函数(返回一个字符串)吗?
谁能解释一下用存储过程替换函数时会发生什么?
提前致谢。
【问题讨论】:
标签: sql-server-2008 function stored-procedures
由于我不太清楚何时使用存储过程而不是函数,
我有一个场景,一个函数已经被使用,但是由于在存储过程中执行需要很长时间,现在我可以用一个过程替换这个函数(返回一个字符串)吗?
谁能解释一下用存储过程替换函数时会发生什么?
提前致谢。
【问题讨论】:
标签: sql-server-2008 function stored-procedures
两者都没有神奇的性能提升。如果它们包含相同的代码,它们将具有相同的性能。
我会说,除非或直到您达到功能限制,否则请将其保留为功能 - 例如如果您想实际更改数据库状态。
函数更易于组合 - 您可以直接从其他语句(例如 SELECT)中调用它们 - 而存储过程必须显式调用。
【讨论】: