使用exec(sql语句)
例:使用变量拼接SQL语句,然后用exec运行
declare @table varchar(200)
declare @sql varchar(200)
set @table = 'aaa'
set @sql='select * from '+@table
exec(@sql)
例中的变量@table 即传递表名
sql='select * from '+@table 即 select * from aaa
跟正常表一样的语法;
经过实测例子:
Declare @Table1 Table (testid Varchar(30))
Insert @Table1(testid)
Values('n2')
update @Table1
Set testid = 'a'
Select * From @Table1
都说了经过实测的,不信你将上述语句拷贝到sql上面去运行下。
declare @t
set @t=表
exec ('update ' +@t +' set 列名称 = 新值 WHERE 列名称 = 某值')
动态语句就可以了
update 物理表
set 字段 = [@表变量].字段
from @表变量
where [@表变量].字段 = 物理表.字段
declear @变量
set @变量=表名