R中载入关系数据中载入数据用作基础数据是比较常见的操作,R提供了DBI接口进行关系数据库的操作,以下为查询Oracle数据库的例子。DBI支持写入数据操作,但除非保存R处理的数据结果,有更便捷的工具,因此只考虑查询的情况。
library(ROracle)
drv <- dbDriver('Oracle')
con <- dbConnect(drv,username='username',password='password',dbname='ORCL')
res <- dbSendQuery(con,'select * from table_name')
while(!dbHasCompleted(res)){
df <- fetch(res,n = 20) #仅作为示例,对于不是非常好巨大的数据集,通过忽略n参数即可一次获得完整记录,省去迭代游标的循环
print(summary(df))
}
dbClearResult(res)
dbDisconnect(con)
dbUnloadDriver(drv)
另外有几个函数比较有用
dbListConnections(drv)
用来查看数据库连接信息
dbListResults(con)
用来查看连接中打开的记录集
dbListTables(con)
获取表列表
dbListFields(con,'TABLE_NAME')
获取字段列表
dbGetInfo(drv)
更详尽的信息