【问题标题】:Pyodbc is only accepting windows authenticationPyodbc 只接受 windows 身份验证
【发布时间】:2020-05-28 11:22:08
【问题描述】:

我有一个 python 脚本,它通过 pyodbc 从 Windows 连接到 MS SQL 服务器。尝试使用 windows 身份验证时,它正在连接到数据库,但尝试使用 SQL 服务器身份验证(使用用户名和密码)时,它显示以下错误。

"('28000', "[28000] [Microsoft][ODBC SQL Server 驱动程序][SQL 服务器]用户“xxxx”登录失败。 (18456) (SQLDriverConnect); [28000] [Microsoft][ODBC SQL Server 驱动程序][SQL Server]登录失败 对于用户“xxxx”。 (18456)")"。

但我可以使用该用户名和密码(SQL 服务器凭据)连接到 SQL 服务器。我已经在用户映射选项卡中为该用户启用了数据库读取、写入权限,并且 SQL 服务器身份验证也处于启用状态。 这成为一个瓶颈。欢迎提供解决方案。提前谢谢!!!。

【问题讨论】:

    标签: pyodbc database-connectivity sql-server-authentication


    【解决方案1】:

    今天我了解到,在 python 中,大写和小写最重要。 我之前的连接字符串是,

    conn=pyodbc.connect(r'DRIVER=SQL Server;SERVER=10.60.144.13;UID=BOT_Autoheal;PWD=bot_Aut0h3a1;DATABASE=OO_GlobalAutoHealing;TRUSTED_CONNECTION=NO';)

    但对我有用的实际连接字符串是,

    conn=pyodbc.connect(r'DRIVER=SQL Server;SERVER=10.60.144.13;UID=BOT_Autoheal;PWD=bot_Aut0h3a1;DATABASE=OO_GlobalAutoHealing;Trusted_Connection=no')

    因此,请始终按原样使用 Trusted_Connection=no,不要尝试将其更改为大写。

    【讨论】:

      猜你喜欢
      • 2018-03-25
      • 1970-01-01
      • 2018-12-05
      • 1970-01-01
      • 2014-12-15
      • 2010-10-05
      • 2013-10-30
      • 2012-09-13
      • 1970-01-01
      相关资源
      最近更新 更多