【问题标题】:Syntax error in the below update command以下更新命令中的语法错误
【发布时间】:2014-04-26 15:54:15
【问题描述】:

谁能告诉我这个更新命令的语法在哪里?

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"

【问题讨论】:

  • 您似乎在“UPDATE VolunteerDetails”之后漏掉了一个空格
  • 好吧,您的更新版本实际上根本没有使用表单中的值。您应该查看参数化 SQL。

标签: sql ms-access vb6


【解决方案1】:

您的 SQL 将类似于:

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

这三个问题:

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

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

【讨论】:

  • 谢谢,我会试试这个。作为记录,我使用的是内置查询工具的访问权限,因此无论使用哪种语言
  • 这是VB btw,我刚查了一下
猜你喜欢
  • 1970-01-01
  • 2013-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-22
  • 2014-12-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多