declare @T1 table (id int)
insert @T1 select 1
select * from @t1declare @sql varchar(100)
set @sql = 'select * from @T1'
exec(@sql)set @sql=N'select *from @T'
exec sp_executesql @sql,N'@T Table',@T1----------以上语句都不行,动态Sql文中怎么使用表变量啊。
insert @T1 select 1
select * from @t1declare @sql varchar(100)
set @sql = 'select * from @T1'
exec(@sql)set @sql=N'select *from @T'
exec sp_executesql @sql,N'@T Table',@T1----------以上语句都不行,动态Sql文中怎么使用表变量啊。
set @sql = '
declare @t1 table(id int)
select * from @T1'
exec(@sql)
在@sql里不是变量的形式。
declare @order varchar(50)
create table #t
(
f1 int,
f2 int,
f3 int
)
Set @order='f1'
Set @sql=N'select * from #t order by '+ @order+N' desc'
print 'sql='+@sql
exec sp_executesql @sql
drop table #t