使用 Python 连接本地 SSMS 数据库:pymssql 模块报错解决
使用 Python 的 pymssql 模块连接本地 SSMS 数据库时,可能会遇到以下报错信息:
Traceback (most recent call last):
File 'src\pymssql\_pymssql.pyx', line 647, in pymssql._pymssql.connect
File 'src\pymssql\_mssql.pyx', line 2109, in pymssql._mssql.connect
File 'src\pymssql\_mssql.pyx', line 701, in pymssql._mssql.MSSQLConnection.__init__
File 'src\pymssql\_mssql.pyx', line 1818, in pymssql._mssql.maybe_raise_MSSQLDatabaseException
File 'src\pymssql\_mssql.pyx', line 1835, in pymssql._mssql.raise_MSSQLDatabaseException
pymssql._mssql.MSSQLDatabaseException: (20009, b'DB-Lib error message 20009, severity 9:
Unable to connect: Adaptive Server is unavailable or does not exist (DESKTOP-1FJ3A1R)
Net-Lib error during Unknown error (10061)
DB-Lib error message 20009, severity 9:
Unable to connect: Adaptive Server is unavailable or does not exist (DESKTOP-1FJ3A1R)
Net-Lib error during Unknown error (10061)
')
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File 'C:\Users\dell\Desktop\小学期\数据库\demo.py', line 18, in <module>
conn = conn()
File 'C:\Users\dell\Desktop\小学期\数据库\demo.py', line 8, in conn
connect = pymssql.connect(
File 'src\pymssql\_pymssql.pyx', line 653, in pymssql._pymssql.connect
pymssql._pymssql.OperationalError: (20009, b'DB-Lib error message 20009, severity 9:
Unable to connect: Adaptive Server is unavailable or does not exist (DESKTOP-1FJ3A1R)
Net-Lib error during Unknown error (10061)
DB-Lib error message 20009, severity 9:
Unable to connect: Adaptive Server is unavailable or does not exist (DESKTOP-1FJ3A1R)
Net-Lib error during Unknown error (10061)
')
报错信息提示'Unable to connect: Adaptive Server is unavailable or does not exist',表示连接的服务器不存在或无法访问。以下是一些可能原因和解决方法:
- 确保给出的服务器名称是正确的。您可以在 SSMS 中打开并确认服务器名称。
- 确保 SQL Server 服务正在运行。您可以在服务管理器中检查 SQL Server 服务的状态。
- 确保 SQL Server 允许远程连接。您可以在 SQL Server 配置管理器中启用 TCP/IP 协议和设置正确的端口号。
- 检查防火墙设置。确保防火墙没有阻止与 SQL Server 的连接。
- 尝试使用 IP 地址而不是服务器名称进行连接。有时使用 IP 地址可以解决连接问题。
如果您已经验证了以上所有步骤,并且仍然无法连接到数据库,请尝试使用其他工具或方法连接到数据库,以确定问题是否与 pymssql 模块有关。
以下是一个示例代码:
import pymssql
serverName = 'DESKTOP-1FJ3A1R'
userName = 'sa'
passWord = '20010821qaz'
def conn():
connect = pymssql.connect(
serverName,
userName,
passWord,
'TPCH'
)
if connect:
print('连接成功')
return connect
if __name__=='__main__':
conn = conn()
原文地址: https://www.cveoy.top/t/topic/qlaw 著作权归作者所有。请勿转载和采集!