我有一个大的 .sql 文件,作为 MySQL 数据库(包含多个表)的备份创建,我想从 R 中搜索其中的元素。
理想情况下,会有一个 read.sql 函数将表转换为包含 data.frames 的 R 列表。有什么接近的吗?如果没有,RSQLite 或 RMySQL 可以提供帮助吗?(通过参考手册,我没有看到我所描述的简单功能)
没办法,老大。对于 R 来解释您的 MySQL 数据库文件,它必须完成 DBMS 本身所做的大部分工作。这是一项艰巨的任务,在一般情况下是不可行的。
这是否会返回您所寻求的(我认为在审查后您会承认尚未得到特别好的描述):
require(RMySQL)
drv <- dbDriver("MySQL")
con <- dbConnect(drv)
dbListTables(con)
# Or
names(dbGetInfo(drv))
如果这些只是源代码,那么您需要的只是readLines
. 如果您正在寻找可以获取 SQL 代码并产生有用结果的 R 引擎,那么 sqldf 包可能会提供一些帮助。它解析嵌入在引用字符串中的 SQL 代码,并将其应用于内存中的数据帧对象或磁盘驻留表(或两者)。其磁盘文件的默认驱动程序是 SQLite,但也可以使用其他驱动程序。