日期:2014-05-17  浏览次数:20488 次

sql 更新问题




EXEC('UPDATE 表示SET 字段1='+@字段1+',字段2=1 WHERE 字段3 in ('+字段3+')')



如果 @字段1 为 ‘20131203-987’  会报错 


说20131203 列名不存在?

------解决方案--------------------
EXEC ('UPDATE 表示SET 字段1='+''''+@字段1+''''+',字段2=1 WHERE 字段3 in ('+字段3+')')
------解决方案--------------------
改成这样试试:

EXEC('UPDATE 表示SET 字段1='''+@字段1+''',字段2=1 WHERE 字段3 in ('+字段3+')')
------解决方案--------------------
改这个
EXEC ('UPDATE 表示SET 字段1='+''''+@字段1+''''+',字段2=1 WHERE 字段3 in ('+字段3+')')
有可能你的字段1是varchar类型的,所以会错。