Sql server 如何连接到R中的SQL server数据库
我正在尝试使用R连接到SQL Server数据库,但不确定查询字符串的详细信息。我通常在SQLServer2008上使用SQLServerManagementStudio,并使用单点登录连接。我找到了下面的例子Sql server 如何连接到R中的SQL server数据库,sql-server,r,rodbc,Sql Server,R,Rodbc,我正在尝试使用R连接到SQL Server数据库,但不确定查询字符串的详细信息。我通常在SQLServer2008上使用SQLServerManagementStudio,并使用单点登录连接。我找到了下面的例子 myconn <- odbcDriverConnect(connection="Driver={SQL Server Native Client 11.0};server=hostname;database=TPCH; trusted_connection=yes;") 如何找
myconn <- odbcDriverConnect(connection="Driver={SQL Server
Native Client 11.0};server=hostname;database=TPCH;
trusted_connection=yes;")
如何找到所需的详细信息?我以前使用一个名为odbc的连接完成了这项工作,我已经建立了这个连接。如果您不知道,您可以在windows中通过键入搜索提示符“odbc”并选择“设置数据源”来创建一个。例如-如果将odbc连接命名为“con1”,则可以通过以下方式进行连接:
con<-odbcConnect('con1') #opening odbc connection
df<-sqlQuery(con, "select *
from ssiD.dbo.HOURLY_SALES
") #querying table
close(con)
con这对我很有用
library(RODBC)
dbconnection <- odbcDriverConnect("Driver=ODBC Driver 11 for SQL Server;Server=server_name; Database=table_name;Uid=; Pwd=; trusted_connection=yes")
initdata <- sqlQuery(dbconnection,paste("select * from MyTable;"))
odbcClose(channel)
库(RODBC)
dbconnection问题比这个简单。最大的线索是错误消息中的\n
。某些内容已使连接字符串重新流动,因此现在驱动程序名称中有一个新行字符。这与任何已注册的驱动程序名称都不匹配。痛苦和痛苦随之而来。确保您的整个连接字符串都在一条线上
我经常使用:
driver={SQL Server本机客户端11.0}代码>
而且效果非常好。比依赖预定义的连接名要好得多。首先,您需要安装包“RSQLServer”及其所有依赖项。
然后在RStudio中使用相关参数执行以下命令:
conn <- DBI::dbConnect(RSQLServer::SQLServer(),
server = '<server>',
port = '<port>',
properties = list(
user = '<user>',
password = '<password>'
))
conn尝试另一个ODBC驱动程序。
在windows中,按“windows”按钮,然后键入“odbc”。
单击“数据源(ODBC)”链接。
转到“驱动程序”选项卡以查看SQL Server的可用驱动程序。
另外-删除连接字符串中分号后的“”空格。
注意-数据库属性应指向数据库名称,而不是表名称
这对我很有用:
odbcDriverConnect("Driver=SQL Server Native Client 11.0;Server=<IP of server>;Database=<Database Name>;Uid=<SQL username>;Pwd=<SQL password>")
odbcDriverConnect(“驱动程序=SQL Server本机客户端11.0;服务器=;数据库=;Uid=;Pwd=”)
我认为您只需要“SQL Server”作为驱动程序。这就是我用来连接SQL Server 2012的全部内容。我认为您(在实际实现中)已将Server=hostname中的hostname替换为实际的hostname…\n哪个搜索提示符是windows提示符,然后将您带到odbc管理?是的。然后设置一个到您的服务器的命名连接database@user1605665这对你不管用吗?如果您需要有关ODBC连接的说明-我收到一个错误,指示odbcConnect函数未知。我应该先安装软件包吗?@Eralper-很可能是这样<代码>安装。软件包('RODBC')
应该可以工作。看来RSQLServer
已从CRAN中删除
odbcDriverConnect("Driver=SQL Server Native Client 11.0;Server=<IP of server>;Database=<Database Name>;Uid=<SQL username>;Pwd=<SQL password>")