2013-02-13 92 views
0

我收到以下錯誤信息:3075在查詢表達式丟失的運算符語法錯誤(缺少操作員)

這裏的代碼的簡短片段:

Dim dbs As Database 
Set dbs = CurrentDb() 
dbs.Execute "DELETE FROM TempTable_Entity_mapping_DEFSET_Selection;" 
Do While Not rsDEFSET.EOF 
    Debug.Print rsDEFSET.Fields.item("RESULT").Value 
    MIP = rsDEFSET.Fields.item("FK_DIM_MBR_ITEM").Value 
    KPIName = rsDEFSET.Fields.item("SHORTNAME_MBR").Value 
    ID = rsDEFSET.Fields.item("RESULT").Value 
    DefSetName = rsDEFSET.Fields.item("KPI_DEFSET_NAME") 
    Scenarios = rsDEFSET.Fields.item("SCENARIOS") 

    fillTempTab = "INSERT INTO TempTable_Entity_mapping_DEFSET_Selection (MIP, KPIName, ID, DefSetName, Scenarios) VALUES ('" & MIP & "','" & KPIName & "','" & ID & "','" & DefSetName & "','" & Scenarios & "');" 
    Debug.Print fillTempTab 
    dbs.Execute fillTempTab 
    rsDEFSET.MoveNext 
Loop 
+1

定義了「rsDEFSET」的位置? – 2013-02-13 19:05:31

+2

您應該使用準備好的語句;特別是如果您從不受信任的來源獲得輸入。這裏有一個如何使用它們的例子:http://stackoverflow.com/questions/6572448/msaccess-prepared-statements – bernie 2013-02-13 19:08:35

+0

我同意@bernie,你可以將你的插入和刪除語句存儲在持久的querydefs中,然後將參數添加到querydef對象。另外,你不需要'.Fields.item',rsDefset(「field」)就可以。 – Beth 2013-02-13 19:14:32

回答

0

外貌就像你想念你想在你的SQL語句刪除什麼

你的第一個查詢應該讀

DELETE * FROM TempTable_Entity_mapping_DEFSET_Selection; 
相關問題