4

尝试将存储过程的输出写入临时表时,我收到错误消息

消息 208,级别 16,状态 0,第 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 

这里有什么问题?

谢谢你的帮助!

4

2 回答 2

4

要以这种方式使用临时表,INSERT INTO您应该首先定义此表。

CREATE TABLE #tblTemp(
ID int,
....
)

在 T-SQL 中,可以使用以下命令自动创建临时表:

select * into #tblTemp
from table

您可以在存储过程结果中使用此语法,使用OPENROWSET.

这是关于 SO 的答案,可以提供帮助

于 2013-02-19T13:59:31.383 回答
3

您需要先使用例如CREATE TABLE语句创建#temp 表,然后才能创建INSERT INTO它。

于 2013-02-19T13:56:35.477 回答