1

我正在尝试更新名为“tbl_Responses”的表中的几列,但它在运行后给出了一个我一直试图找到的错误!

varX= DLookup("[ID]", tableName, "[supplierNum] = " & supplierNum)
updateFieldsTbl1="column1,column2,column3,column4"
updateValuesTbl1 ="name,lastname, bla bla"
'There is nothing wrong with those 3 variables above.


sqlUp = "UPDATE " & tableName & "(" & updateFieldsTbl1 & ")" & " SET " & "(" & _ updateValuesTbl1 & ") WHERE ID = " & varX
DoCmd.RunSQL sqlUp

它在 UPDATE 语句行中给出错误。你能告诉我我做错了什么吗?提前致谢

4

2 回答 2

2

您的字符串解析为:

UPDATE tableName (column1,column2,column3,column4) SET (name,lastname, bla bla) ...

这类似于对INSERTa 无效的UPDATE格式,正确的格式是:

UPDATE tableName 
SET column1 = 'name',
    column2 = 'lastname',
    columnN =  valueN
WHERE ID = X

因此构建字符串,它应该可以工作。

于 2012-05-25T14:36:28.893 回答
1

这是 INSERT 的语法 - 对于 UPDATE 它是

UPDATE Table SET Field1=Value1, Field2=Value2, etc WHERE ...
于 2012-05-25T14:38:22.607 回答