Save result of stored procedure in a Table variable
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
How to SELECT * INTO [temp table] FROM [stored procedure]
号
我有一个嵌套的存储过程调用
在其中一个存储过程中,我希望将结果保存到如下表变量中:
1 2 | INSERT INTO @myTable EXEC sp_myStoredProcedure |
但是,因为过程。嵌套时发生以下错误:不能嵌套insert exec语句
必须从另一个过程调用该过程,更改这不是一个选项。我想尝试使用一个输出参数,但它仍然必须用insert-into语句来设置。
将从存储过程调用中检索到的数据保存到变量中还有哪些其他选项?
对于嵌套进程,表变量对调用过程不可见。以下内容适用于临时表。
http://databases.aspfaq.com/database/should-i-use-a-temp-table-or-a-table-variable.html
http://support.microsoft.com/kb/305977/en-us
未测试,但可以这样做:
1 2 3 4 | DECLARE @insertedProc AS VARCHAR(300) SET @insertedProc = 'INSERT INTO ' + @myTable + ' sp_myStoredProcedure' EXEC @insertedProc |
确保您已经定义了@mytable之前的内容。