我在网络驱动器上有一个.accdb Access DB文件,我已映射到本地计算机上的Z:/驱动器。你可以将ODBC连接到这个吗?
这是创建ODBC的代码(usrAccessPath
是包含文件路径的字符串变量):
connAccessDB <- odbcDriverConnect(paste0("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=",usrAccessDBPath))
此文件路径有效:
C:/Users/boswelpa/Desktop/Projects/Absenteeism/Absenteeism Data.accdb
但是此文件路径(映射的网络驱动器)不起作用:
Z:/SSG Reporting Team/For Thomas/Absenteeism Data.accdb
相同的代码,只是不同的文件路径。
答案 0 :(得分:1)
如评论所述,对具有RODBC的R的MS Access数据库的ODBC调用接受本地硬盘或网络路径(即通用命名约定(UNC)),前提是它们遵循Windows file name rules。当然,一定要通过加倍角色来逃避R中的反斜杠:
因此,以下远程路径应该起作用:
accDB = "\\\\Path\\To\\Network\\Drive\\Access\\Database.accdb"
conn <- odbcDriverConnect(paste0("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=", accDB))
此外,映射到UNC的正确映射的本地驱动器应该可以工作:
accDB = "Z:\\Mapped\\Path\\To\\Network\\Drive\\Access\\Database.accdb"
conn <- odbcDriverConnect(paste0("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=", accDB))