簡體   English   中英

訪問VBA SQL運行時錯誤'3075'語法錯誤

[英]Access VBA SQL Run-time error '3075' Syntax error

我正在嘗試運行此代碼,但它給了我錯誤消息:

運行時錯誤'3075'; “查詢表達式中的語法錯誤(缺少運算符)”

我該如何解決該錯誤?

我想插入CellNumber表1中而不是在變量表與日期時間 ,字符串和CellNumber 錯誤

Dim sqlstr As String

sqlstr = "SELECT CellNumber FROM table1 WHERE CellNumber NOT IN (SELECT CellNumber FROM Variable)"

DoCmd.RunSQL "INSERT INTO ERROR ([DateTime], RowNum, Error) SELECT Now(), 'string' as RowNum, CellNumber FROM(" & sqlstr & ")"
 Dim sqlstr As String
    sqlstr = "INSERT INTO Error ( [DateTime],RowNum, Error ) " & _
             "SELECT Now() , 'String' , table1.cellnumber FROM table1 " & _
             "LEFT JOIN Variable ON table1.cellnumber = Variable.cellnumber " & _
             "WHERE  Variable.cellnumber Is Null"
    currentdb.execute sqlstr, dbfailonerror

我就是那樣做的

編輯------我想在后代添加一些評論:

  1. 我個人將DateTime戳字段設置為默認值Now() ,並從我的sql中完全省略它...所有新記錄都將帶有時間戳,錯誤空間更少。
 Dim sqlstr As String sqlstr = "INSERT INTO tblError ( StringField, CellNumber ) " & _ "SELECT 'String' , table1.cellnumber FROM table1 " & _ "LEFT JOIN table2 ON table1.cellnumber = table2.cellnumber " & _ "WHERE table2.cellnumber Is Null" currentdb.execute sqlstr, dbfailonerror 
  1. 我永遠不會將DateTimeErrorVariable用作表或字段名稱,因為即使訪問可以處理它(通過分隔實例的保留名稱[DateTime] ),在嘗試對代碼進行故障排除時也可能會造成混淆和誤導和SQL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM