[英]Python ODBC Connect to SQL Server with Service Account (trusted_connection=no)
[英]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.