【问题标题】:R: MySQL character encoding on WindowsR:Windows 上的 MySQL 字符编码
【发布时间】:2019-06-24 09:44:45
【问题描述】:

从似乎特定于 Windows 计算机的 MySQL 数据库中提取数据时,我遇到了字符编码问题。

适用于 Linux 计算机的简单解决方案:

# establish connection
db = src_mysql(user = "user", password = "pass", dbname = "training_db", host = "127.0.0.1", port = 3306)
# change/force the character encoding
dbGetQuery(db$con, 'SET NAMES utf8')

如果我在 Linux 上使用此设置拉表,一切看起来都很好,如果我在 Windows 计算机上执行此操作,我会从数据库中的捷克语字符中得到混乱的变量。

当我在 Win pc 上检查 MySQL Workbench 中的数据库时,一切似乎都很好。

有没有人偶然发现同样的问题并找到了解决方案?

【问题讨论】:

    标签: mysql r dplyr mysql-workbench dbplyr


    【解决方案1】:

    找到了使用 dbConnect 的解决方案。因此在这个特定的例子中:

    db = dbConnect(drv = RMariaDB::MariaDB(),
    username = "user",
    password = "pass",
    dbname = "training_db",
    host = "127.0.0.1", 
    port = 3306
    )
    

    有趣的是,我记得我曾尝试在 Linux 上使用 dbConnect,但在遇到一些问题之后,就被前面提到的 src_mysql 所吸引。无论如何,即使在当今的官方指南中,也推荐使用 dbConnect dplyr_guidelines

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-11
      • 1970-01-01
      • 1970-01-01
      • 2019-11-28
      • 2016-12-01
      • 1970-01-01
      • 2015-02-28
      相关资源
      最近更新 更多