exec和临时表
2013-01-07 07:28 Andy Ge 阅读(440) 评论(0) 编辑 收藏 举报exec中的语句能够访问主方法中创建的临时表
如:
select 1 as a into #tt
exec('select * from #tt')
能正确返回。
但如果在exec中创建了临时表,在主程序中是访问不到的
exec('select 1 as a into #tt')
select * from #tt
将会报错,找不到#tt
也就是说在调用的子方法中创建了临时表,在退出子方法时将会被删除,但是在父方法中创建的临时表,在子方法中可以访问。
该规则适用于在一个存储过程中创建了临时表,如果该存储过程调用了其他的存储过程,这个被调用的存储过程同样可以访问到该临时表。