12
sqlalchemy是Python的數據庫連接模塊,默認情況下使用SQL身份驗證(數據庫定義的用戶帳戶)。如果您想使用Windows(域或本地)憑據對SQL Server進行身份驗證,則必須更改連接字符串。如何使用Windows身份驗證通過sqlalchemy連接到SQL Server?
默認情況下,由SQLAlchemy的定義,在連接字符串來連接到SQL Server如下:
sqlalchemy.create_engine('mssql://*username*:*password*@*server_name*/*database_name*')
此,如果使用Windows憑據時,會拋出類似這樣的錯誤:
sqlalchemy.exc.DBAPIError: (Error) ('28000', "[28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for us
er '***S\\username'. (18456) (SQLDriverConnect); [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for us
er '***S\\username'. (18456)") None None
在此錯誤消息中,代碼18456標識由SQL Server本身拋出的錯誤消息。此錯誤表示憑據不正確。
如果我們從機器運行腳本,上述連接字符串可能會很有用我們使用Windows憑據登錄。如果我需要從其他主機運行腳本,該怎麼辦? –