可以从R打开accdb数据库(MS Access),现在我不能



我有一小段R代码,直到几天前工作得很好,现在,突然之间,它在一些pc上工作,而在其他pc上不起作用。有人知道微软推出的任何更新是否会引起问题吗?

我在所有pc上运行r -32位,而那些不工作的pc似乎已将MS Access 2010升级到2016。

这是我的代码:

library(RODBC)
testdb <- file.path("foo.accdb")
channel <- odbcConnectAccess2007(testdb)
tables_list=grep("foo_table", sqlTables(channel)[,3], value=TRUE) # list of tables with matching names   
odbcCloseAll()

我得到的错误信息是:

sqlTables(channel)错误:第一个参数不是打开的RODBC频道

附加:警告消息:1:In odbcDriverConnect(con,…):
[ODBC]错误:状态IM002,代码0,消息[Microsoft][ODBC Driver]没有找到数据源名称,也没有指定默认驱动程序。在odbcDriverConnect(con,…):ODBC连接失败

谜底揭晓!显然,升级到MS Access 2016删除了ODBC的32位驱动程序。重新安装Microsoft Access Database Engine 2010 32-bit后,一切又恢复正常了。

感谢大家的帮助!

最新更新