我在使用sqldf和Rpostgree进行列编码时遇到很多问题(当我在包含西班牙语字母的数据集中进行查询时,会将其转换为奇怪的字符),因此,我想移至MYSQL,但是我发现它的文档太混乱了,无法与sqldf一起使用,我需要知道如何输入数据库参数以将sqldf与先前配置的数据库一起使用。
Postgree示例:
选项(sqldf.RPostgreSQL.user =“ postgres”,sqldf.RPostgreSQL.password =“测试”,sqldf.RPostgreSQL.dbname =“ postgres”,sqldf.RPostgreSQL.host =“ localhost”,sqldf.RPostgreSQL.port = 5432)
有人知道如何检查特定软件包的选项,在本例中为RMySQL。
必须添加local-infile参数,以允许将本地数据加载到mysql数据库,否则将产生错误。
[rs-dbi]用户=超级用户密码=测试端口= 3310默认字符集= latin1主机= 127.0.0.1数据库=测试本地文件[mysql]本地文件[mysqld] local_infile = 1
?sqldf
:在MySQL上,数据库必须预先存在。创建一个c:\ my.ini或Windows上的%MYSQL_HOME%\ my.ini文件或UNIX上的/etc/my.cnf文件包含有关数据库的信息。该文件可以指定用户名,密码和端口。如果有尚未设置。如果使用标准端口设置,则该端口可以是也省略了。该数据库取自数据库的dbname参数。sqldf命令,或者如果未从getOption(“ sqldf.dbname”)设置,或者未设置选项,则假定为“测试”。请注意,MySQL不使用sqldf的用户,密码,主机和代码端口参数。看到http://dev.mysql.com/doc/refman/5.6/en/option-files.html为可以放置配置文件的其他位置以及其他信息。
此外,您也可以尝试使用SQLite(这是默认后端,无需安装)。在Windows上使用默认的SQLite后端,这对我有效。
library(sqldf)
d <- data.frame(x = "el perro saltó sobre el zorro perezoso")
sqldf("select * from d")
## x
## 1 el perro saltó sobre el zorro perezoso