Arch Linux下R调用odbcConnectAccess2007报错:未找到该函数
解决Arch Linux下RODBC无法找到
odbcConnectAccess2007的问题 核心原因
odbcConnectAccess2007是RODBC包针对Windows系统设计的专属函数,Linux系统下无该函数实现,因此会提示找不到。
可行解决方案
方案1:使用mdbtools + RODBC建立连接
- 先安装Arch Linux上的mdbtools(开源Access数据库工具):
sudo pacman -S mdbtools - 配置ODBC驱动:
编辑/etc/odbcinst.ini文件,添加mdbtools驱动配置:[MDBTools] Description = MDBTools Driver for Access Databases Driver = /usr/lib/libmdbodbc.so - 在R中替换连接代码,使用通用的
odbcConnect函数:# 替代原来的odbcConnectAccess2007调用 conn <- odbcConnect("Driver=MDBTools;DBQ=BD-Embalses.mdb")
方案2:将Access数据库转换为CSV格式读取
- 用mdbtools导出数据库表到CSV:
# 查看数据库包含的所有表 mdb-tables BD-Embalses.mdb # 导出指定表(示例表名为"Embalses")到CSV mdb-export BD-Embalses.mdb Embalses > embalses.csv - 在R中读取CSV文件(注意西班牙语文档需指定编码):
embalses_data <- read_csv("embalses.csv", locale = locale(encoding = "Latin1"))
内容的提问来源于stack exchange,提问作者Alberto
相关产品推荐
相关产品推荐

