RS-DBI驱动程序警告:(作为字符导入的第1列中无法识别的MySQL字段类型7)

pyC*_*hon 5 r rmysql

我正在尝试运行一个适用于MySQL或其他MySQL连接器API的简单查询,

SELECT * FROM `table` WHERE type = 'farmer'
Run Code Online (Sandbox Code Playgroud)

我已尝试使用RMySQL包的各种方法,他们都得到相同的错误 RS-DBI driver warning: (unrecognized MySQL field type 7 in column 1 imported as character)

Type = 'farmer'
(Query<-paste0("SELECT * FROM `table` WHERE type = '%",Type,"%'")) 
res<-dbGetQuery(con, Query)

Query<-paste("SELECT * FROM `table` WHERE type = \'farmer\'")



Query<-paste("SELECT * FROM `table` WHERE type = 'farmer'")
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

zer*_*bit 11

"type"是MYSQL中的关键字.用反引号围绕它以逃避字段名称.

SELECT * FROM `table` WHERE `type` = 'farmer'
Run Code Online (Sandbox Code Playgroud)

您的表中也可能有一个时间戳列.已知R不识别该列类型.将其转换为SQL语句部分中的unix时间戳.


Dir*_*tel 0

看起来数据库模式在列中有一些类型为 7 的内容——并且 RMySQL 驱动程序似乎不知道该类型。

我尝试在查询中排除第一列,或者select * ...通过类似的方式将其投射到该级别

 select foo as character, bar, bim, bom from 'table' where ...
Run Code Online (Sandbox Code Playgroud)