Относительный путь к базе данных - PullRequest
0 голосов
/ 24 октября 2018

Я надеюсь, что кто-то здесь может указать мне правильное направление.Я пытаюсь подключиться к базе данных доступа из R без жесткого пути к ней.Например, это работает, когда я пишу путь:

library(RODBC)
library(dplyr)
library(dbplyr)
library(DBI)
library(tibble)

myDB <- odbcDriverConnect("Driver={Microsoft Access Driver (*.mdb, 
*.accdb)};DBQ=C:/Users/myfolder/Desktop/R_Connection.accdb")

 #But this doesn't work. I put the database path in 'dbpath' but for some
 #reason 'dbpath' isn't recognized.

dbpath <- paste0(getwd(),"/R_Connection.accdb")
print(dbpath)
myDB <- odbcDriverConnect(paste0(""Driver={Microsoft Access Driver (*.mdb, 
*.accdb)};DBQ="",dbpath))

Ответы [ 2 ]

0 голосов
/ 25 октября 2018

Этот код работает.Странно, так я запускал его раньше, и он не работал.Начался новый сеанс R, и теперь он работает как шарм.Спасибо за регистрацию в этом R. Прост.

  myDB <- odbcDriverConnect(paste0("Driver={Microsoft Access Driver (*.mdb, 
  *.accdb)};DBQ=",dbpath))
0 голосов
/ 24 октября 2018

Вы должны быть более конкретными, это не работает, например, предоставляя сообщение об ошибке.Вероятно, это ваша двойная кавычка ", из которой вам нужно выйти, чтобы вставить строку.paste0 в замешательстве.Вы можете сделать это с помощью \" или с помощью одинарной кавычки ' и поместить в конец вторую кавычку следующим образом:

myDB <- odbcDriverConnect(paste0("'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=",dbpath,"'"))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...