【问题标题】:Syntax Error: Comma in Query Expression of SQL Statement?语法错误:SQL 语句的查询表达式中的逗号?
【发布时间】:2014-03-14 19:00:25
【问题描述】:

好吧,伙计们,我现在是 100% 疯了。有人可以在这里帮助我吗?在尝试了一切并寻找具有这种经验的其他人之后,我一无所知。我在这里不知所措。我已经在所有表/字段名称周围尝试了括号。我尝试从 Select 字段中删除表名,我尝试前后移动括号但无济于事。

我得到的错误是:“查询表达式中的语法错误(逗号)。'([F1],[F2],[F3],[F4],[F5],[F6],[F7],[ F8])'。

    CurrentDb.Execute "INSERT INTO [tblSalesJournal] ( [Store], [Business Unit], [Country], [State], [Store Type], [Net Sales], [Fee], [Total] ) " & _
    "SELECT ( [F1], [F2], [F3], [F4], [F5], [F6], [F7], [F8] ) " & _
    "FROM [tblImport]"

非常感谢任何帮助

【问题讨论】:

    标签: sql vba ms-access


    【解决方案1】:

    问题是:

    SELECT ( [F1], [F2], [F3], [F4], [F5], [F6], [F7], [F8] )
    

    因此,您不应将 SELECT 语句括起来

    SELECT [F1], [F2], [F3], [F4], [F5], [F6], [F7], [F8]
    

    有些 MS 错误很奇怪。

    【讨论】:

    • INSERT INTO SET 使用方括号 INSERT INTO VALUES 使用方括号...但是 INSERT INTO SELECT 没有?!?!?!!?啊啊啊啊啊啊啊啊啊啊啊!!!!!!啊啊啊啊啊!!!谢谢老兄,我现在就开始把头从墙上拉出来。
    • 在 MS Access 查询设计窗口中构建查询有很多话要说,因此您可以正确掌握 MS Access 语法。你也可以创建你的查询字符串——DIM sSQL As String; sSQL="SELECT etc"',这将允许您 DEBUG.PRINT sSQL 并将其粘贴到查询设计窗口的 SQL 视图中。
    • 实际上,user2296381,如果你的字段名称中有空格,你真的只需要括号(“[”和“]”),这只是为了让代码知道它是一个“单词”。如果您命名所有表格和字段时不带空格(如果绝对必要,请使用下划线),您将永远不需要括号。您可能对在 SELECT 语句中从未使用过的括号(“(”和“)”)感到困惑。
    • @Jonnybones 好点。或者,如果您有保留字。我通常建议在字段/列名称前加上表别名,以避免所有此类问题并有助于未来的数据库更改。
    • @user2296381 - 没有“insert into set”这样的东西。 insert into table (...) values (...) 使用括号是因为您正在构建要插入到表中的文字行。括号分隔文字行。 insert into table (...) select ... 不使用括号,因为您是在“选择”要从某处插入的行,而不是在现场构建它们。
    猜你喜欢
    • 1970-01-01
    • 2015-12-01
    • 1970-01-01
    • 2014-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多