存储过程何时返回结果集

时间:2016-03-28 18:32:18

标签: sql-server

存储过程何时返回结果集的规则是什么?

如果我在底部附近添加SELECT语句,则会将其作为另一个结果集返回。

但我在开头添加了SELECT,然后在结果集中没有返回它。

在什么情况下会将SELECT作为结果集返回?如果后面跟着其他语句似乎没有返回,那是哪些?

2 个答案:

答案 0 :(得分:2)

存储过程可以返回多个结果集。

如果您从前端应用程序(如asp.net)使用存储过程,则可能必须遍历结果集集合以查看它们。

存储过程中的其他语句阻止SELECT语句返回结果的唯一方法是阻止它被执行。 (如IF...ELSE块,或停止执行的RETURN命令等。)

所以回答"规则是什么?",规则是,如果SELECT语句完全执行,如果它返回结果集,那么它将返回一个结果集。

答案 1 :(得分:0)

存储过程返回最后一个SELECT作为结果。

它不包含select into或使用select

设置变量

您可以使用UNION做一些技巧来返回多种结果,结果广告使用辅助字段来分隔结果。

查看multiple result in stored procedure