ALTER PROCEDURE [dbo].[Procep] @PName varchar(50), --字段名 @PTxt varchar(200) --字段内容 AS BEGIN Exec('Update Ptable Set '+@PName+'='+@PTxt) END
EXEC Procep 'pName','jjjjj'
消息 207,级别 16,状态 3,第 1 行 列名 'jjj' 无效。
哪位高手指教下,谢谢!begin declare @sql varchar(400) select @sql='Update Ptable Set '+@PName+'='+'''++@PTxt+''' exec (@sql) end SQL code:
ALTER PROCEDURE [dbo].[Procep] @PName varchar(50), --字段名 @PTxt varchar(200) --字段内容 AS BEGIN Exec('Update Ptable Set '+@PName+'='''+@PTxt + '''') END
顶,动态sql中为字符串赋值要用双引号转义单引号 ALTER PROCEDURE [dbo].[Procep] @PName varchar(50), --字段名 @PTxt varchar(200) --字段内容 AS BEGIN Exec('Update Ptable Set '+@PName+'='+