2011-01-23 90 views
2

我有类似如何INSERT INTO [临时表] FROM [存储过程]和SELECT * FROM [临时表]

Create TABLE #members 
( 
    [member_id] [bigint] NOT NULL, 
    [registration_id] [int] NOT NULL, 
    [date_modified] [datetime] NULL, 
    [date_created] [datetime] NULL 
) 
INSERT #members 
(
    [member_id], 
    [registration_id], 
    [date_modified], 
    [date_created] 
) 
EXEC 
dbo._roster_member_GetMemberContacts_byMember_id @Member_id = 1000 
Select * from #members 

,当我在查询分析器窗口中运行它: 已经有一个对象在数据库中命名为“#members”。

回答

4

在查询分析器中,除非您明确指定DROP临时表,否则临时表将存在于查询分析器窗口的生命周期中。

+0

我编辑了我的问题 - 我失去了一些东西... – FiveTools 2011-01-23 04:23:11

3

使用下列成语:

if object_id('tempdb..#temptable', 'U') is not null 
    drop table #temptable 
create table #temptable (...) 
... rest of SQL ... 

显然取代您的临时表的名称。