当尝试将存储过程的输出写入临时表时,我收到错误消息
Msg 208,Level 16,State 0,Line 4
无效的对象名称'#tblTemp'。
我的疑问是:
DECLARE @group_name varchar(250)
SET @group_name = 'somevalue'
INSERT INTO #tblTemp EXEC mySchema.sp_MyStoredProc @group_name OUTPUT
SELECT *
FROM #tblTemp
DROP TABLE #tblTemp
这里有什么问题?
感谢您的帮助!
答案 0 :(得分:4)
要在INSERT INTO
中以这种方式使用临时表,您应首先定义此表。
CREATE TABLE #tblTemp(
ID int,
....
)
在T-SQL中,可以使用以下命令自动创建临时表:
select * into #tblTemp
from table
您可以在使用OPENROWSET
的存储过程结果的情况下使用此语法。
答案 1 :(得分:3)
您需要创建#temp表格,例如在CREATE TABLE
之前发表INSERT INTO
声明。