Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > ADP及SQL SERVER

判断MS SQLSERVER临时表是否存在

时 间:2013-09-30 09:26:28
作 者:smeyou   ID:32560  城市:宁海
摘 要:判断MS SQLSERVER临时表是否存在
正 文:

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)
 
原来我是搞混了。学艺不精的结果。:(

Access软件网QQ交流群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助