R连接到本地SQL Server

时间:2017-12-08 00:54:49

标签: sql sql-server r

我无法通过Rstudio连接到我的本地sql服务器。我能够连接到我公司托管的SQL Server,并且可以通过Management Studio连接到本地SQL Server。我究竟做错了什么?

在本地连接是否需要做些什么? (LocalDB)\v11.0是我通过Management Studio连接到本地SQL Server的确切服务器名称。

install.packages("RODBC")

library(RODBC)

dbconnection <- odbcDriverConnect("Driver=SQL Server;Server=(LocalDB)\v11.0;Database=NBA;trusted_connection=yes")                           

我收到的错误消息如下:

  

警告讯息:
  1:在odbcDriverConnect中(&#34; Driver = SQL Server; Server =(LocalDB)\ v11.0; Database = NBA; trusted_connection = yes&#34;):
  [RODBC]错误:状态08001,代码17,消息[Microsoft] [ODBC SQL   服务器驱动程序] [DBNETLIB] SQL Server不存在或访问被拒绝。

     

2:在odbcDriverConnect(&#34; Driver = SQL Server; Server =(LocalDB)\ v11.0; Database = NBA; trusted_connection = yes&#34;):
  [RODBC]错误:状态01000,代码53,消息[Microsoft] [ODBC SQL   服务器驱动程序] [DBNETLIB] ConnectionOpen(Connect())。

     

3:在odbcDriverConnect(&#34; Driver = SQL Server; Server =(LocalDB)\ v11.0; Database = NBA; trusted_connection = yes&#34;):ODBC连接失败

2 个答案:

答案 0 :(得分:2)

尝试双反斜杠 ... 我尝试了以下操作并且工作正常:

library(odbc)
dbconnection <- odbcDriverConnect("Driver=SQL Server;Server=(local)\\SQLSERVER2016;Database=Test_DB;trusted_connection=yes")
data <- sqlFetch(dbconnection, 'dbo.temp_table', colnames=FALSE, rows_at_time=1000)

感谢。

答案 1 :(得分:0)

我有相同的错误,但这是由不同的问题引起的。由于某些原因,{SQL Server}不允许我连接到本地SQL Server,但将其更改为{SQL Server Native Client 11.0}可以。

library(RODBC)
dbconnection <- odbcDriverConnect("Driver={SQL Server Native Client 11.0};Server= (local)\\SQLSERVER2016;Database=Test_DB;trusted_connection=yes")

事实证明,称为SQL Server ODBC Driver的SQL Server驱动程序是旧驱动程序,而SQL Server Native Client同时包含SQL OLE DB提供程序和SQL ODBC driver以支持与SQL Server的本机连接。 / p>