我需要编写一个较长的过程来为公司生成报告。由于报告涉及要提取的多个数据,因此我编写了许多小程序来提取不同的记录。是在主程序中编写许多子程序并在主程序中调用它们的写方法吗?
请帮忙,或者有其他方法可以做到这一点。
除非您真的变得疯狂(**)并建立一个存储过程的“树”,每个存储过程都调用另一个,否则不会出现任何问题。实际上,这样做可能会带来好处
**:MSSQL中存在一个“限制”,因为堆栈限制为32个级别。也就是说,如果procedure1调用procedure1_1,而那个过程调用procedure1_1_1,而一个又调用了另一个,依此类推...则当您获得32个以上的“ deep”调用时,您将得到一个错误。但是顺序调用多个存储过程不是问题。
唯一要记住的是您正在使用的变量/临时表的上下文。如果要传递值,则需要使用参数。(例如,使用`OUTPUT有助于跟踪@rowcount变量)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句