如何防止 RMySQL 警告 "Unsigned INTEGER in col imported as numeric"?

How to prevent RMySQL warnings "Unsigned INTEGER in col imported as numeric"?

从 MySQL table 加载数据时,通常会出现警告,例如:

unrecognized MySQL field type 7 in column 26 imported as character

Unsigned INTEGER in col 3 imported as numeric

如何正确地将数据库 table 加载到数据框中,以便不显示这些警告?

我看到函数RMySQL::dbDataType()可以"Determine the SQL Data Type of an S object"。有没有办法告诉它哪种 MySQL 数据类型与数据框中的哪种向量类型相匹配?

您没有做错任何事情——RMySQL "helpfully" 会向您发出所有这些警告,以防万一这不是您想要的(几乎总是如此)。 @hadley 建议安装开发版本 (0.11.x),据说这个问题已得到解决。否则,您可以使用 suppressWarnings(...),其中 ... 是您要为其隐藏警告的语句。或者只是忍受它直到版本 0.11 命中 CRAN。

从 RMySQL 切换到 RMariaDB 也会删除警告,请参阅 https://github.com/r-dbi/RMySQL/issues/37