sqlserver 使用变量名给临时表命名

  sqlserver 使用变量名给临时表命名

 sqlserver中的临时表是存在系统数据库的tempdg中的,如果我们创建临时表的话,在连接很多的情况下会产生很多临时表,所以这个磁盘占有量是需要考虑的;

临时表又分为 全局和局部 :局部就是当前连接可以看到的,全局是所有连接都可以看到的,但是临时表的销毁,全局的基本上会在创建它的连接关闭时销毁,

CREATE PROC [dbo].[usp_GetAmount]

(
@memberId VARCHAR(10)

)  

set @sql1 = N'SELECT * INTO ##'+@memberId+' FROM  table'
exec (@sql1)
set @sqlCount = N'select count(1) from #'+@memberId+''
print @sqlCount
EXEC(@sqlCount)

posted @ 2011-01-27 11:22  问题再难总能解决  阅读(841)  评论(0编辑  收藏  举报