2013-07-29 52 views
0

我遇到了Access的問題。我試圖用另一個表(客戶)的幾個值更新一個表(shipmentdata)。這是現在我的代碼:找不到這個語法錯誤VBA SQL

Option Compare Database 

Sub Update() 

Dim strSQL As String 

strSQL = "UPDATE ShipmentData As A " & _ 
     "SET A.[Sales Rep] = B.[Sales Rep], A.OfficeNbr = B.OfficeNbr " & _ 
     "FROM A " & _ 
     "INNER JOIN Customers As B " & _ 
     "ON A.Owner = B.Name;" 

DoCmd.RunSQL strSQL 

End Sub 

我不斷收到一個錯誤:「運行時錯誤‘3075’:在查詢表達式「B.OfficeNbr語法錯誤(缺少操作員)從INNER JOIN客戶爲B開A.Owner = B.Name」。

我和/試過沒有別名,有/無在不同的地方括號,我不斷收到此錯誤。有人能幫助我嗎?

+0

無在黑暗中做研究和拍攝:我想你忘了在你的內部選擇陳述中包含你的「選擇」。 – Elias

+0

'UPDATE'的正確sintax不包含任何'FROM':'UPDATE aTable AS INNER JOIN anotherTable AS b SET ...' – Barranka

回答

1
UPDATE ShipmentData A 
INNER JOIN Customers B ON A.Owner = B.Name 
SET A.[Sales Rep] = B.[Sales Rep], 
    A.OfficeNbr = B.OfficeNbr 
+0

非常感謝!像魅力一樣工作。我的語法不好。 – lavaisreallyhot