[英]Can not drop a temp table Invalid object name '#Temp1' error - in sql server
我有以下代码抛出一个无效的对象名称'#Temp1'错误....
每次迭代,我截断表(DROP表也没有工作)....没有明显的跳出来作为一个问题.....感谢任何想法...
While @@Fetch_Status = 0 -- For each ObsSetCode -
BEGIN
PRINT 'I am processing the SECTION ------ ' + @dl_EventSetName
PRINT 'I am processing the ObsSetCode ------ ' + @ObsSetList
IF OBJECT_ID('tempdb..#Temp1') IS NOT NULL
BEGIN
TRUNCATE TABLE #Temp1
END
Insert Into #Temp1
Select o.EventSetName,
o.EventSetDisplay,
o.EventSetDescription,
o.ChildSetName,
ROW_NUMBER() Over (Order By o.ChildSetName) RN
From ##ObsSetLevel o,
##Final f
Where f.ChildSetName = o.EventSetName and
o.EventSetName = @ObsSetList
Order By o.ChildSetName asc
Insert into ##Final
Select *
From #Temp1
Where RN = 1
Union
Select '', '',
'', ChildSetName, RN
From #Temp1
Where RN > 1
Insert Into ##Final
Select distinct o.ChildSetName,
o.ChildSetName,
o.ChildSetName,
'',
''
From ##ObsSetLevel o,
##Final f
Where f.ChildSetName = o.EventSetName and
o.EventSetName = @ObsSetList
Order By o.ChildSetName asc
PRINT @ObsSetList
FETCH NEXT FROM ObsSetList_cursor Into @ObsSetList
END
改变你选择看起来像这样:
Select o.EventSetName,
o.EventSetDisplay,
o.EventSetDescription,
o.ChildSetName,
ROW_NUMBER() Over (Order By o.ChildSetName) RN
into #Temp1
From ##ObsSetLevel o,
##Final f
Where f.ChildSetName = o.EventSetName and
o.EventSetName = @ObsSetList
Order By o.ChildSetName asc
除非已定义表或已存在,否则不能使用Insert Into
。
你不是在任何地方创建#Temp
。
SELECT
创建表。 请尝试以下方法:
While @@Fetch_Status = 0 -- For each ObsSetCode -
BEGIN
PRINT 'I am processing the SECTION ------ ' + @dl_EventSetName
PRINT 'I am processing the ObsSetCode ------ ' + @ObsSetList
IF OBJECT_ID('tempdb..#Temp1') IS NOT NULL
BEGIN
DROP TABLE #Temp1 /* DROP THE TABLE IF IT IS FOUND */
END
Select o.EventSetName,
o.EventSetDisplay,
o.EventSetDescription,
o.ChildSetName,
ROW_NUMBER() Over (Order By o.ChildSetName) RN
Into #Temp1 /* Create the table with your SELECT */
From ##ObsSetLevel o,
##Final f
Where f.ChildSetName = o.EventSetName and
o.EventSetName = @ObsSetList
Order By o.ChildSetName asc
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.