0

我试过用谷歌搜索,但无济于事——我不太明白我在使用这个 SQL 代码时做错了什么。我目前不知所措。这个错误是什么意思,我可能的罪魁祸首是什么?

如您所见,我正在尝试从只有 1 个简单 WHERE 条件的 2 个原始表中插入处理表。任何帮助表示赞赏!

CurrentDb.Execute "
        INSERT INTO Processing
          ([State], [Zip Code], [Gross Sales], [Sales Exempt Type], 
           [Sales Exempt Amount], [Taxable], [Tax], BATCH_NO, FILENAME,FILEPATH, 
           USERNAME, IMPORT_TIMESTAMP)" & _
            "
        SELECT [tblImport].[State/ Province]
              , [tblImport].[Dest Postal Code]
              , [tblImport].[Line Amount]
              , [tblImport].[Jurisdiction Description]
              , [tblImport].[Line Exempt]
              , [tblImport].[Line Taxable Amount]
              , [tblImport].[Tax Amount]
              , [batch].BATCH_NO
              , [batch].FILENAME
              , [batch].FILEPATH
              , [batch].IMPORT_USERNAME
              , [batch].IMPORT_TIMESTAMP " & _
            "
          FROM batch
               , tblImport
         WHERE  BATCH_NO =" & li_batch_no
4

1 回答 1

1

很可能是无效的 Select 表或列。

使用 Access 自己的查询设计器来帮助您找到它。

首先获取代码运行的sql。在代码中放置断点,将 sql 复制到即时窗口并在其前面加上“?” 并在复制代码后运行它:[CTRL-G]?[CTRL-V][RETURN]。复制返回的 sql。

创建一个新查询,更改为 Sql 视图,粘贴您评估的 sql。

更改为设计视图。有什么意外吗?它是否将任何字段更改为表达式(字段中的“Expr”前缀) - 因为它在您的 sql 中找不到表或列?

更改回 Sql 视图。它是否改变了您尝试解析表/字段的 Sql?任何 Expr 别名都是未解析的表/列。

更改为数据表视图以运行选择(但不是插入)。任何参数提示都是针对 Access 无法解析的表/列名称。

最后运行查询。同样,任何参数提示都是针对表/列名称 Access 无法解析的。遇到的任何错误都将显示在更友好的消息框中,而不是您的 Execute 代码的 Err 对象。

于 2013-05-29T22:58:34.900 回答