以下更新命令中的语法错误

时间:2014-04-26 15:54:15

标签: sql ms-access vb6

有人可以告诉我这个更新命令中的语法在哪里吗?

CurrentDb.Execute "UPDATE VolunteerDetails" & "SET FirstName=" & Me.frst_Name_txt & ", LastName='" & Me.lst_Name_txt & "'" & " WHERE VolsID=" & Me.vol_ID_txt

谢谢!

我尝试了一种新的方式,使其更简单......但仍然给我一个语法错误。

CurrentDb.Execute "UPDATE VolunteerDetails SET FirstName=Me.frst_Name_txt, LastName=Me.lst_Name_txt, WHERE VolsID=Me.vol_ID_txt"

1 个答案:

答案 0 :(得分:6)

您的SQL看起来像:

UPDATE VolunteerDetailsSET FirstName=Foo, LastName='Bar' WHERE VolsID=10

这有三个问题:

  • VolunteerDetailsSET
  • 之间没有空格
  • 你引用它的名字周围没有撇号
  • 您根本不应该直接在SQL中包含这些值(因为您有SQL注入漏洞)

目前还不清楚你使用的是哪种语言(VB?只是直接访问表单?)但你绝对应该使用参数化SQL。如果您可以向我们提供有关您的环境的更多数据,我们可以为您提供更多帮助。