#局部临时表的生命周期的会话!!##全局临时表的生命周期是全局它是会冲突的!你可以打开两个查询分析器,一个查询分析器的连接算是一个会话! 你分别创建两个同名的临时表是不会发生错误的! 而你别创建两个同名的全局临时表是会发生错误的!而一个exec是一个单独会话!就象上面的例子!haha... 你应该: int i if (1==2) { i=5; } print i;
to:pengdali(大力) 现在我应该怎么解决?
declare @str varchar(1000) set @str='create table ##tempgoods_table(goodsid varchar(10))' exec(@str) select * from ##tempgoods_table drop table ##tempgoods_table
if (1==2)
{
int i;
i=5;
}
print i;
错误!
你分别创建两个同名的临时表是不会发生错误的!
而你别创建两个同名的全局临时表是会发生错误的!而一个exec是一个单独会话!就象上面的例子!haha...
你应该:
int i
if (1==2)
{
i=5;
}
print i;
set @str='create table ##tempgoods_table(goodsid varchar(10))'
exec(@str)
select * from ##tempgoods_table
drop table ##tempgoods_table