[英]Issue connecting to SQL Server using DBI:dbConnect in R
我嘗試的第一種方法有效。 我首先在Windows上與ODBC data source administrator
定義了ODBC連接my_connection_name
。 然后,我使用以下代碼:
library(DBI)
library(odbc)
con <- DBI::dbConnect(odbc(),
dsn='my_connection_name',
UID = "firstname.lastname@company.com",
PWD = "mypassword")
這樣很好!
但是,當我嘗試在dbConnect
函數中定義驅動程序,服務器和數據庫名稱時。 它失敗!
con <- DBI::dbConnect(odbc(),
Driver = "ODBC Driver 13 for SQL Server",
Server = 'my_server_name',
Database = "my_database_name",
UID = "firstname.lastname@company.com",
PWD = "mypassword",
Trusted_Connection = "yes")
我收到錯誤消息:
Error: nanodbc/nanodbc.cpp:950: 08S01: [Microsoft][ODBC Driver 13 for SQL Server]TCP Provider: An existing connection was forcibly closed by the remote host.
有趣的是,當我刪除Trusted_Connection = "yes"
。
con <- DBI::dbConnect(odbc(),
Driver = "ODBC Driver 13 for SQL Server",
Server = 'my_server_name',
Database = "my_database_name",
UID = "firstname.lastname@company.com",
PWD = "mypassword")
我收到這樣的錯誤消息:
錯誤:nanodbc / nanodbc.cpp:950:HY000:[Microsoft] [用於SQL Server的ODBC驅動程序13] [SQL Server]無法打開登錄請求的服務器“ company.com”。 登錄失敗。
之前定義ODBC連接時,我使用了相同的驅動程序,服務器和數據庫名稱。
我的身份驗證選項是ActiveDirectoryPassword
。
有人知道發生了什么嗎?
如果使用Trusted Connection =是,則無需提供用戶名和密碼。 您的服務帳戶將用於連接到SQL Server。
con <- DBI::dbConnect(odbc(),
Driver = "ODBC Driver 13 for SQL Server",
Server = 'my_server_name',
Database = "my_database_name",
Trusted_Connection = "yes")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.