drop table #tempcitys
select * into #tempcitys from hy_citys
上面的語句第一次運行的時候就肯定出錯了,但第二次就不會。
因為select * into #tempcitys from hy_citys自動創建了臨時表#tempcitys ,第一次臨時表不存在,drop table自然就出錯了。
剛開始沒反應過來,select * into是會自動創建臨時表的。
所以比較可靠的做法,還是先判斷臨時表是否存在,然后再drop table
if exists (select * from tempdb.dbo.sysobjects where id = object_id(N'tempdb..#tempcitys') and type='U')
drop table #tempcitys
注意tempdb后面是兩個. 不是一個的