ALTER proc [dbo].[gb] @table_name varchar(8) ASdeclare @sql varchar(100)
set @sql='update' + @table_name +' set id=123456 where (id=123)'
exec(@sql)exec gb aa请问@sql词句改怎么拼接
set @sql='update' + @table_name +' set id=123456 where (id=123)'
exec(@sql)exec gb aa请问@sql词句改怎么拼接
ALTER proc [dbo].[gb] @table_name varchar(8) ASdeclare @sql varchar(100)
set @sql='update' + @table_name +' set id='+'123456'+' where (id='+'123'+')'
exec(@sql)exec gb aa
set @sql='update' + @table_name +' set id='+123456+' where (id=123)'
exec(@sql)exec gb aa
set @sql='update' + @table_name +' set id=123456 where (id=123)'
exec(@sql) --最好exec sp_executesql @sql with recompileexec gb aa
set QUOTED_IDENTIFIER ON
go
ALTER proc [dbo].[gb] @table_name varchar(8) ASdeclare @sql Nvarchar(200)
--set @sql='update' + @table_name +' set id='+'123456'+' where (id='+'123'+')'
--set @sql='update' + @table_name + 'set id=' + '123456' + ' where (id=' + '123' + ')'
--set @sql='update' + @table_name +' set id=123456 where (id=123)'
set @sql='update' + @table_name +' set id='+'123456'+' where (id='+'123)'
exec sp_executesql @sql with recompileexec gb aa
消息 102,级别 15,状态 1,第 1 行
'=' 附近有语法错误。
或
set @sql='update' + @table_name +' set id= '''123456''' where (id='''123''')'--id是Varchar
set @sql='update' + @table_name +' set id= ''123456'' where (id=''123'')'--id是Varchar
set @sql='update ' + @table_name +' set id='+'123456 '+' where id='+'123'
exec sp_executesql @sql with recompileexec gb aafredrickhu 的方法不错。