使用 RStudio 连接 SQL 服务器并访问环境中的数据

Connect SQL Server with RStudio and access data in the environment

我像这样连接到 mysql 服务器:

mydb <- DBI::dbConnect(
  drv = MySQL(),
  host = "host",
  port = 1111,
  user = "user_1",
  password = "password",
  dbname = "database_name"
)

然后我使用此代码

查询该数据table
query1 <- fetch(dbSendQuery(mydb, "select * from table_1"), n = Inf)

所以结果是我在 R 环境中有一个 query1 table。

现在我在 SQL 服务器中有其他数据库,所以我正在尝试做同样的事情。我正在建立连接:

con <- dbConnect(odbc(),
                 Driver = "SQL Server",
                 Server = "server",
                 Database = "database_2",
                 UID = "user_2",
                 PWD = "password",
                 Port = 2222)

似乎可行,因为“连接”选项卡中出现了数据库,但是当我导航并尝试查看数据时出现错误。除此之外,我正在寻找与之前的功能相同的功能(fetchdbSendQuery),通过这种方式在环境中提供数据帧。

我终于用这段代码解决了问题:

con <- dbConnect(odbc(),
                 Driver = "ODBC Driver 17 for SQL Server",
                 Server = "server",
                 Database = "database_2",
                 UID = "user_2",
                 PWD = "password",
                 Port = 2222)

所以问题出在驱动程序上。