簡體   English   中英

如何在不使用trusted_connection的情況下從Windows連接到SQL Server?

[英]How do I connect to SQL Server from Windows without using trusted_connection?

努力解決這個問題。 現在,我正在Windows機器上構建服務應用程序,我一直在使用以下代碼行連接到SQL Server

dbConnect(odbc::odbc(), .connection_string = paste0('driver={SQL Server};server=', SERVER, ';trusted_connection=true'))

它運行良好,但是我的問題是,我正在構建的此應用程序將在iOS上使用,並最終在Linux容器上使用,因此以后我不能依賴“ trusted_connection”。 但是,以下代碼對我來說失敗了:

dbConnect(odbc::odbc(), .connection_string = paste0('driver={SQL Server};server=', SERVER, ';UID=',USER,";PWD=",PWORD))

在該行中,我刪除了“ trusted_connection”,並輸入了用於登錄Windows機器的用戶名和密碼,但出現此錯誤:

Error: nanodbc/nanodbc.cpp:950: 28000: [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'fhcrc\\sgreenle'

通過SQL Server Management Studio連接到服務器時看到的就是用戶,並且密碼匹配,但是不知何故我仍然出現此錯誤。

關於如何調試或解決這個問題的任何建議都將是驚人的。 一段時間以來,這一直困擾着我,我無法解決自己的一生,而且我擔心如果沒有解決方案,我的項目將死在水中。

在連接字符串中提供用戶名和密碼時,您正在使用SQL身份驗證。 您的代碼示例顯示您正在嘗試將Active Directory帳戶用於SQL身份驗證,但這將不起作用。 您需要使用SQL身份驗證創建一個單獨的SQL Server帳戶,然后輸入這些憑據。 有用的參考資料: https : //docs.microsoft.com/zh-cn/sql/relational-databases/security/choose-an-authentication-mode

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM