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)