
概述drop table #tempcitys select * into #tempcitys from hy_citys 上面的语句第一次运行的时候就肯定出错了,但第二次就不会。 因为select * into #tempcitys from hy_citys自动创建了临时表#tempcitys ,第一次临时表不存在,drop table自然就出错了。 刚开始没反应过来,select * int 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后面是两个. 不是一个的 考虑另外一种sql的写法 insert into #tempcitys(cityID) select cityID from hy_citys 这种写法,#tempcitys则不会被自动创建,要使用#tempcitys,则需要先create table #tempcitys(cityID int) 原来我是搞混了。学艺不精的结果。:( 总结
以上是内存溢出为你收集整理的判断MS SQLSERVER临时表是否存在全部内容,希望文章能够帮你解决判断MS SQLSERVER临时表是否存在所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
评论列表(0条)