提问人:Hack-R 提问时间:3/23/2016 最后编辑:CommunityHack-R 更新时间:3/23/2016 访问量:5826
使用 64 位 Windows 从 R 查询 MS Access DB
Query MS Access DB from R with 64-bit Windows
问:
有人要求我创建一个闪亮的UI,以允许他们从使用MS Office 2010创建的Microsoft Access数据库中读取和写入。
我按照本指南连接到Access DB,虽然我可以在Access本身中打开此数据库,但我从R收到以下错误:RODBC
> channel <- odbcConnectAccess("AD_Users.accdb")
Error in odbcConnectAccess("AD_Users.accdb") : `
odbcConnectAccess is only usable with 32-bit Windows
所以,我找到了这个解决方案并尝试了一下:
> channel <- odbcDriverConnect("AD_Users.accdb")
Warning messages:
1: In odbcDriverConnect("AD_Users.accdb") :
[RODBC] ERROR: state IM002, code 0, message [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
2: In odbcDriverConnect("AD_Users.accdb") :
[RODBC] ERROR: state 01S00, code 0, message [Microsoft][ODBC Driver Manager] Invalid connection string attribute
3: In odbcDriverConnect("AD_Users.accdb") : ODBC connection failed
> channel <- odbcDriverConnect("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=AD_Users.accdb")
Warning messages:
1: In odbcDriverConnect("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=AD_Users.accdb") :
[RODBC] ERROR: state IM002, code 0, message [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
2: In odbcDriverConnect("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=AD_Users.accdb") :
ODBC connection failed
>
但正如你所看到的,有一些非常严重的警告。它似乎不起作用。
还有其他解决方法吗?
当我收到这些警告时,我正在使用 32 位 R,即使它们是警告而不是技术错误,数据库连接也不成功。
更新
这似乎建立了一个成功的连接,尽管到目前为止我无法从中查询数据:
channel <- odbcConnectDbase("AD_Users.accdb")
答:
5赞
mfidino
3/23/2016
#1
我在使用 64 位窗口时使用 Access 数据库,并且没有任何问题。但是,您应该检查软件包手册(链接到 pdf),以确保您的计算机上安装了适当的驱动程序。一旦你有了合适的司机,你就可以开始了!odbcConnectAccess2007
RODBC
评论
0赞
Hack-R
3/23/2016
谢谢,我没想到这个功能会有用,因为它是 2010 年而不是 2007 年,但它确实有效。
评论