我正在尝试从 mysql 数据库查询数据,当然,其中包含一些字符串。对于连接和数据检索,我在 R 中使用 RMySQL,效果很好。除了一件事:我正在检索的字符串似乎不是 utf8 格式的。但我需要这个,因为这些字符串中有一些德语“Umlaute”。
当我问数据库时,它的编码是
dbGetQuery(db, "SHOW VARIABLES LIKE 'character_set_%';")
我得到了想要的答案:
Variable_name Value
1 character_set_client utf8
2 character_set_connection utf8
3 character_set_database utf8
4 character_set_filesystem binary
5 character_set_results utf8
6 character_set_server utf8
7 character_set_system utf8
8 character_sets_dir C:\\Program Files\\MySQL\\MySQL Server 5.7\\share\\charsets\\
但例如我收到
Andreas Wünsche
代替
Andreas Wünsche
希望有人知道如何处理。如果需要更多信息,请询问。我可以提供。
我发现有些棘手但对我有用:
您必须手动将数据框的 col 定义为 utf-8,如下所示:
x <- "Wünsche"
Encoding(x) <- "UTF-8"
x
[1] "Wünsche"
认为你必须对所有字符串向量执行此操作
EDIT :
看一看here https://stackoverflow.com/questions/25634734/displaying-japanese-characters-retrieved-from-mysql-in-r
似乎通过添加解决了同样的问题'set character set "utf8"'
在 - 的里面dbSendQuery()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)