由于我在何时使用存储过程而不是函数的情况下不太清楚,
我有一个函数已经被使用的场景,但由于在存储过程中执行需要很长时间,现在我可以用一个过程替换这个函数(它返回一个字符串)吗?
任何人都可以解释一下用存储过程替换函数会发生什么吗?
提前致谢。
答案 0 :(得分:2)
任何一个都没有神奇的性能提升。如果它们包含相同的代码,它们将具有相同的性能。
我会说,除非或直到你达到功能限制 - 将其保留为功能 - 例如如果你想真正改变数据库状态。
函数更易于组合 - 您可以直接从其他语句(如SELECT
)中调用它们 - 而必须显式调用存储过程。