自学内容网 自学内容网

已解决sqlalchemy.exc.OperationalError: (pymssql._pymssql.OperationalError) (18456

已解决sqlalchemy.exc.OperationalError: (pymssql._pymssql.OperationalError) (18456

报错信息:

  File "src\pymssql\_pymssql.pyx", line 652, in pymssql._pymssql.connect
sqlalchemy.exc.OperationalError: (pymssql._pymssql.OperationalError) (18456, b"\xe7\x94\xa8\xe6\x88\xb7 'sa' \xe7\x99\xbb\xe5\xbd\x95\xe5\xa4\xb1\xe8\xb4\xa5\xe3\x80\x82DB-Lib error message 20018, severity 14:\nGeneral SQL Server error: Check messages from the SQL Server\nDB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (192.168.1.11)\nDB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (192.168.1.11)\n")
(Background on this error at: https://sqlalche.me/e/14/e3q8)

我检查发现是我数据库名错误了

这个错误提示表明你在使用 SQLAlchemy 和 pymssql 连接 SQL Server 时,发生了登录失败的情况。以下是一些可能的原因和解决方法:

可能的原因

  1. 用户名或密码错误:确保使用的用户名和密码是正确的。检查是否有拼写错误或不必要的空格。
  2. 用户权限不足:你可能在 SQL Server 中没有足够的权限。确保用户 sa 有权限访问数据库。
  3. SQL Server 配置问题:确保 SQL Server 正在运行,并且允许远程连接。检查 SQL Server 配置管理器中的网络协议设置。
  4. 防火墙设置:确保防火墙没有阻止对 SQL Server 的访问。你可能需要在防火墙中允许 SQL Server 的端口(默认为 1433)进行通信。
  5. 数据库名错误:如果在连接字符串中指定了数据库名,确保该数据库存在且可用。

解决方法

  1. 检查连接字符串: 确保连接字符串正确。示例格式如下:pythonCopy Codeconnection_string = 'mssql+pymssql://sa:your_password@192.168.1.11/your_database'
  2. 重置密码: 如果有权限,可以尝试重置 sa 用户的密码。
  3. 检查 SQL Server 状态: 使用 SQL Server Management Studio 检查 SQL Server 的运行状态和网络配置。
  4. 查看 SQL Server 错误日志: SQL Server 的错误日志可能会提供更详细的错误信息,帮助你诊断问题。
  5. 测试连接: 尝试使用其他工具(如 SQL Server Management Studio)连接到数据库,以确认问题是否出在代码

版权声明: 本博客所有文章除特别声明外。转载请注明来自--笔记云! https://www.xxspvip.cn/xianqing/detail/54


原文地址:https://blog.csdn.net/weixin_45091564/article/details/143366364

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!