调用另一个存储过程后,从存储过程中返回错误的结果

时间:2011-11-08 02:44:02

标签: mysql stored-procedures resultset

我们有一个存储过程,我们调用它来创建用户。在该存储过程中,我们调用其他存储过程来创建用户需要开始的东西。每个存储过程都以这样的结尾:

select 1 AS statusMsg, 'User Successfuly Created' as msg;

问题是我们错了statusMsgmsg

我们以:

结束程序
call createDefaultSites(l_customerguid);
select 1 AS statusMsg, 'User Successfuly Created' as msg;

但我们从statusMsg来电取代msgcreateDefaultSites()而不是最终选择。

我们如何确保只有最后一个语句返回结果?

1 个答案:

答案 0 :(得分:1)

我最后为每个返回值添加一个标识符并循环遍历它们以找到我正在寻找的那个。

select 1                          AS statusMsg, 
       'User Successfuly Created' AS       msg, 
       'UserCreation'             AS   msgType;

老实说,我没有意识到我收到了多个结果集。如果statusMsg来自第一个结果集,我可能会更快地计算出来。