使用RMySQL

时间:2018-05-07 07:01:36

标签: r rmysql

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

当我运行以下声明时:

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

它返回以下错误:

  

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

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

1 个答案:

答案 0 :(得分:0)

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

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

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

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

修改

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