首页 文章

使用RMySQL加载一个名为“order”的MySQL表

提问于
浏览
0

我目前正在尝试使用RMySQL包将我的R会话连接到MySQL服务器 . 服务器上的一个表称为“order”,我已经搜索了如何使用MySQL导入一个名为order的表(通过将其放入''),但语法不适用于RMySQL查询 .

当我运行以下语句时:

order_query = dbSendQuery(mydb,"SELECT * FROM 'order'")

它返回以下错误:

.local(conn,statement,...)出错:无法运行语句:SQL语法中有错误;检查与MySQL服务器版本对应的手册,以便在第1行的“订单”附近使用正确的语法

任何人都知道如何在R中解决这个问题?

1 回答

  • 0

    MySQL中的单引号表示字符串文字,您不应该将它们放在表名周围 . 尝试不带引号的查询:

    order_query = dbSendQuery(mydb,"SELECT * FROM `order`")
    

    如果由于某种原因,你需要转义表名,然后使用反引号,例如

    SELECT * FROM `some table`    -- table name with a space (generally a bad thing)
    

    Edit:

    正如@Ralf指出的那样,在这种情况下你需要反引号,因为 ORDER 是一个MySQL关键字,你不应该使用它来命名你的表和列 .

相关问题