You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux系统下使用RODBC包读取accdb文件报错求助

Linux下使用RODBC读取Access .accdb文件的解决方案

明确说明:2023年Linux下可以实现读取Access .accdb文件,你遇到的“数据源名称未找到且无默认驱动”错误,核心原因是Linux系统默认没有内置Access ODBC驱动,而非该操作无法实现。

具体解决步骤:

  • 安装Access兼容的ODBC驱动:Linux下可借助mdbtools项目提供的驱动,它支持读取.mdb和.accdb格式文件。在Ubuntu 20.04上执行以下命令完成安装:
    sudo apt update
    sudo apt install mdbtools libmdbodbc1
    
  • 配置ODBC驱动信息:编辑系统ODBC配置文件/etc/odbcinst.ini,添加以下内容以注册驱动:
    [MDBToolsODBC]
    Description = MDBTools ODBC Driver
    Driver = /usr/lib/x86_64-linux-gnu/odbc/libmdbodbc.so
    Setup = /usr/lib/x86_64-linux-gnu/odbc/libmdbodbc.so
    FileUsage = 1
    
  • 在R中建立正确连接:不要直接将文件路径传入odbcConnect,而是通过驱动名称+文件路径构建连接字符串,示例代码如下:
    library(RODBC)
    con <- odbcDriverConnect("Driver=MDBToolsODBC;DBQ=./data/detections.accdb")
    
  • 验证连接有效性:连接成功后,可执行sqlTables(con)查看数据库内的表结构,确认文件读取状态。

注意事项:

  • mdbtools对.accdb的支持基于反向工程实现,若数据库包含复杂查询、VBA代码等特性,可能出现兼容问题,无法完美读取所有内容。
  • 确保当前用户对./data/detections.accdb文件拥有读取权限,否则会触发权限类错误。

内容的提问来源于stack exchange,提问作者Murray

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 22:45:54