【发布时间】:2009-06-16 15:22:55
【问题描述】:
这里有一个我没听过的关于 SP 的论点。火焰喷射器,对向下滴答声要温柔,
由于每次访问数据库服务器都会产生开销,因此我建议将 SQL 置于 SP 中而不是嵌入式代码的一个可能原因是,您可以更轻松地进行更改而不会影响性能。
例如。假设您需要执行返回标量整数的查询 A。
然后,稍后,需求发生变化,您决定标量的结果是 > x,然后,只有这样,您才需要执行另一个查询。如果您在 SP 中执行了第一个查询,您可以轻松地检查第一个查询的结果并有条件地在同一个 SP 中执行第二个 SQL。
如果不执行单独的查询或不必要的查询,您将如何在嵌入式 SQL 中有效地做到这一点?
这是一个例子:
--This SP may return 1 or two queries.
SELECT @CustCount = COUNT(*) FROM CUSTOMER
IF @CustCount > 10
SELECT * FROM PRODUCT
这/在嵌入式 SQL 中执行此操作的最佳方法是什么?
【问题讨论】:
标签: sql performance stored-procedures