【发布时间】:2019-12-21 10:44:22
【问题描述】:
我不知道我的代码错误在哪里。我创建了一个数据源,然后包含在一个 RODBC 函数中。
数据源配置为:
- 名称:sqldatabases
- 驱动程序:SQL Server Native Client 11.0
- 服务器:BRDCVMDB01
- SQL Server 中的数据库:ANALYTICS_FA_CP_SPRO
我希望你能帮助我!
谢谢!
第一次尝试
library(RODBC)
connect <- odbcDriverConnect(connection="Driver={SQL Server Native Client 11.0};server=sqldatabases;database=ANALYTICS_FA_CP_SPRO;trusted_connection=yes;")
警告消息:1:在 odbcDriverConnect(connection = "Driver={SQL 服务器本机客户端 11.0};服务器=数据库;数据库=ANALYTICS_FA_CP_SPRO;可信连接=是;") :[RODBC] 错误:状态 08001,代码 53,消息 [Microsoft][SQL Server Native Client 11.0]Named Pipes Provider: 无法打开 连接到 SQL Server [53]。 2:在 odbcDriverConnect(连接 = "驱动程序={SQL Server Native Client 11.0};服务器=数据库;数据库=ANALYTICS_FA_CP_SPRO;可信连接=是;") :[RODBC] 错误:状态 HYT00,代码 0,消息 [Microsoft][SQL Server Native Client 11.0]登录超时过期 3: In odbcDriverConnect(connection = "Driver={SQL Server Native Client 11.0};服务器=数据库;数据库=ANALYTICS_FA_CP_SPRO;可信连接=是;") :[RODBC] 错误:状态 08001,代码 53,消息 [Microsoft][SQL Server Native Client 11.0]与网络相关或特定于实例的错误 在建立与 SQL Server 的连接时发生。服务器是 未找到或无法访问。检查实例名称是否正确以及是否 SQL Server 配置为允许远程连接。更多 有关信息,请参阅 SQL Server 联机丛书。 4进 odbcDriverConnect(connection = "Driver={SQL Server Native Client 11.0};服务器=数据库;数据库=ANALYTICS_FA_CP_SPRO;可信连接=是;") : ODBC 连接失败
第二次尝试
cn <- odbcDriverConnect(connection="Driver={SQL Server Native Client 11.0};server=BRDCVMDB01;database=databases;trusted_connection=yes;")
警告信息: 1: In for (i in seq_along(args)) { : 关闭未使用 RODBC 句柄 14 2: In for (i in seq_along(args)) { : 关闭未使用 RODBC 句柄 12 3: In for (i in seq_along(args)) { : 关闭未使用 RODBC 句柄 8 4:在 odbcDriverConnect(connection = "Driver={SQL 服务器本机客户端 11.0};server=BRDCVMDB01;database=databases;trusted_connection=yes;"):[RODBC] 错误:状态 28000,代码 18456,消息 [Microsoft][SQL Server Native Client 11.0][SQL Server]用户“ATRAME\mjordao”登录失败。 5:在odbcDriverConnect(connection = "Driver={SQL Server Native Client 11.0};server=BRDCVMDB01;database=databases;trusted_connection=yes;"):[RODBC] 错误:状态 42000,代码 4060,消息 [Microsoft][SQL Server Native Client 11.0][SQL Server]无法打开数据库“databases” 登录请求。登录失败。 6:在 odbcDriverConnect(connection = "Driver={SQL Server Native Client 11.0};server=BRDCVMDB01;database=databases;trusted_connection=yes;") : ODBC 连接失败
第三次尝试
cn <- odbcDriverConnect(connection="Driver={SQL Server Native Client 11.0};server=BRDCVMDB01;database=ANALYTICS_FA_CP_SPRO;trusted_connection=yes;")
cn <- odbcDriverConnect(connection="Driver={SQL Server Native Client 11.0};server=sqldatabases;database=ANALYTICS_FA_CP_SPRO;trusted_connection=yes;")
警告信息: 1:在odbcDriverConnect(connection = "Driver={SQL Server Native Client 11.0};server=sqldatabases;database=ANALYTICS_FA_CP_SPRO;trusted_connection=yes;") : [RODBC] 错误:状态 08001,代码 53,消息 [Microsoft][SQL Server Native Client 11.0]命名管道提供程序:无法打开 连接到 SQL Server [53]。 2:在odbcDriverConnect(connection = "Driver={SQL Server Native Client 11.0};server=sqldatabases;database=ANALYTICS_FA_CP_SPRO;trusted_connection=yes;") : [RODBC] 错误:状态 HYT00,代码 0,消息 [Microsoft][SQL Server Native Client 11.0]登录超时已过期 3:在odbcDriverConnect(connection = "Driver={SQL Server Native Client 11.0};server=sqldatabases;database=ANALYTICS_FA_CP_SPRO;trusted_connection=yes;") : [RODBC] 错误:状态 08001,代码 53,消息 [Microsoft][SQL Server Native Client 11.0]与网络相关或特定于实例的错误 在建立与 SQL Server 的连接时发生。服务器是 未找到或无法访问。检查实例名称是否正确以及是否 SQL Server 配置为允许远程连接。更多 有关信息,请参阅 SQL Server 联机丛书。 4:在odbcDriverConnect(connection = "Driver={SQL Server Native Client 11.0};server=sqldatabases;database=ANALYTICS_FA_CP_SPRO;trusted_connection=yes;") : ODBC 连接失败
【问题讨论】:
-
检查你的连接字符串,它们很混乱(数据库=数据库?)
-
试试
trusted_connection =no。有时它在 R 中有点古怪。此外,如果您在 Linux 中运行它,请使用 ipaddress 而不是sqldatabases
标签: sql r sql-server datasource sqldatasource