0
我有一段代码更新列值,但它给了我错误:选择列名称基于变量名更新值
UPDATE #Cal SET @Curr = @2YD where Day = 'D-3WD'
我尝试使用EXEC
命令:
SELECT @sql = "UPDATE #Cal SET " + @Cur + " = " + @2YD + "where Day = 'D-2WD'"
EXEC @sql
但我得到以下错误:
Syntax error during implicit conversion of VARCHAR value 'where Day = 'D-2WD'' to a DATE field.
它为什么试图将值转换为日期字段?
因此,没有,当你明确地执行该语句错误发生,或仅在动态创建的语句? –
编译时发生,不进入EXEC –
'SELECT @sql =“UPDATE #CAL SET”+ @Cur +“=”+ @ 2YD +“where Day ='D-2WD'” EXEC @ sql' – Meet