使用 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)
似乎可行,因为“连接”选项卡中出现了数据库,但是当我导航并尝试查看数据时出现错误。除此之外,我正在寻找与之前的功能相同的功能(fetch
和 dbSendQuery
),通过这种方式在环境中提供数据帧。
我终于用这段代码解决了问题:
con <- dbConnect(odbc(),
Driver = "ODBC Driver 17 for SQL Server",
Server = "server",
Database = "database_2",
UID = "user_2",
PWD = "password",
Port = 2222)
所以问题出在驱动程序上。
我像这样连接到 mysql 服务器:
mydb <- DBI::dbConnect(
drv = MySQL(),
host = "host",
port = 1111,
user = "user_1",
password = "password",
dbname = "database_name"
)
然后我使用此代码
查询该数据tablequery1 <- 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)
似乎可行,因为“连接”选项卡中出现了数据库,但是当我导航并尝试查看数据时出现错误。除此之外,我正在寻找与之前的功能相同的功能(fetch
和 dbSendQuery
),通过这种方式在环境中提供数据帧。
我终于用这段代码解决了问题:
con <- dbConnect(odbc(),
Driver = "ODBC Driver 17 for SQL Server",
Server = "server",
Database = "database_2",
UID = "user_2",
PWD = "password",
Port = 2222)
所以问题出在驱动程序上。