2014-04-26 44 views
2

有人可以告訴我在這個更新命令中的語法在哪裏嗎?下面的更新命令中的語法錯誤

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" 
+0

「UPDATE VolunteerDetails」後你似乎錯過了一個空格 –

+0

添加了'VB6'標籤。 – Rahul

+1

那麼您的更新版本實際上並未使用表單中的值。你應該看看參數化的SQL。 –

回答

6

您的SQL看起來類似:

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

三個問題是:

  • 你之間VolunteerDetailsSET
  • 你周圍有第一沒有撇號沒有空間名稱引用它
  • 你不應該是我包括直接在你的SQL中的值(因爲你有一個SQL注入漏洞)

你不清楚你正在使用什麼語言(VB?只是直接訪問表單?),但你應該使用參數化的SQL。如果您可以提供更多關於您的環境的數據,我們可以爲您提供更多幫助。

+0

謝謝,我會試試這個。對於我正在使用訪問內置查詢工具的記錄,所以無論運行的語言 – user2799788

+0

這是VB順便說一句,我只是看着它 – user2799788

+0

我編輯了這個問題 – user2799788