2015-03-13 77 views
-1

我試圖運行此代碼,但收到編譯錯誤 - INSERT ....行語句的預期結束。SQL INSERT代碼疑難解答

什麼可能是錯的?

Private Sub cmdInbound_Transport_Click() 

Dim iProduct As Integer 

iProductID = DLookup("DefaultProductID", "tblProductType", "ProductTypeID" = 1) 

INSERT INTO tblGuestProduct (ProductID, GuestID,) VALUES (iProductID,tblBooking!subGuest.GuestID); 

End Sub 
+0

的語言VB?檢查客人ID後的逗號..&如果VB應該在引號.. – 2015-03-13 07:03:14

+0

刪除逗號後的逗號,但沒有什麼好處。仍然得到相同的錯誤。順便說一下,它是VBA,並正在運行訪問2010 – GavinX 2015-03-13 10:19:17

回答

0

在Insert語句中有一個額外的逗號。試試這個,

INSERT INTO tblGuestProduct (ProductID, GuestID) 
    VALUES (iProductID,tblBooking!subGuest.GuestID); 
0

刪除逗號(在GuestID附近)。插入線應該是這樣的:

INSERT INTO tblGuestProduct (ProductID, GuestID) VALUES (iProductID,tblBooking!subGuest.GuestID); 

全碼:

Private Sub cmdInbound_Transport_Click() 

Dim iProduct As Integer 

iProductID = DLookup("DefaultProductID", "tblProductType", "ProductTypeID" = 1) 

INSERT INTO tblGuestProduct (ProductID, GuestID) VALUES (iProductID,tblBooking!subGuest.GuestID); 

End Sub 
+0

或者問題是與Dlookup。如果它進入? DLookup(「[DefaultProductID]」,「tblProductType」,「[ProductTypeID] = 1」)到立即窗口我得到一個答案。但如果我進入?將iProductID添加到即時窗口中,不會返回任何內容。 – GavinX 2015-03-14 07:54:50