34,576
社区成员
发帖
与我相关
我的任务
分享
DECLARE @Sql NVARCHAR(200);
DECLARE @parm varchar(4);
set @parm = 'abc';
---下面这个能成功!----
SET @Sql = 'UPDATE tableA SET '+@parm+'=0 where biaozhi=111111';
EXEC(@sql);
--下面这个虽然没出错,但是实际没有更新为0
SET @Sql = N'UPDATE tableA SET @parm=0 where biaozhi=111111';
EXECUTE sp_executesql @Sql, N'@parm varchar(4)',@parm;
--下面这个虽然没出错,但是实际没有更新为0
SET @Sql = N'UPDATE tableA SET '+@parm + ' =0 where biaozhi=111111';
EXECUTE sp_executesql @Sql
DECLARE @Sql NVARCHAR(200);
DECLARE @parm nvarchar(10);
set @parm =N 'abc';
--下面这个虽然没出错,但是实际没有更新为0
SET @Sql = N'UPDATE tableA SET @parm=0 where biaozhi=111111';
EXECUTE sp_executesql @Sql, N'@parm nvarchar(10)',@parm;
这个呢?