python3.7 连接sql server出现pymssql.OperationalError: (20009, b'DB-Lib error message 20009, severity 9:\nUnable to connect: Adaptive Server is unavailable or does not exist (SZS\\SQLEXPRESS)\n')错误解决

  Today the problem when using python3.7 in pymssql connect sqlserver encountered:

  pymssql.OperationalError: (20009, b'DB-Lib error message 20009, severity 9:\nUnable to connect: Adaptive Server is unavailable or does not exist (SZS\\SQLEXPRESS)\n') 

  It has now been resolved, specifically to record.

  1. When connecting python sql server used, made the following configurations:

  sql server configuration manager ---> SQL Server Network Configuration ----> select instances that are currently used ------> open TCP / IP ----> find the current dynamic port number (currently 51091) ,As shown below:

  2. The code is as follows:

import pymssql
conn = pymssql.connect(host='localhost',server='SZS\SQLEXPRESS', port='51091', user='sa', password='123', database='mysql')
cur = conn.cursor()
sqlstr = "select * from book"
cur.execute(sqlstr)
data = cur.fetchall()
cur.close()
conn.close()
print(data)

  3.执行上方代码结果如下,没有报错

  4.注意点

conn = pymssql.connect(host='localhost',server='SZS\SQLEXPRESS', port='51091', user='sa', password='123', database='mysql')  # 或者
conn = pymssql.connect(host='szs',server='SZS\SQLEXPRESS', port='51091', user='sa', password='123', database='mysql')

  1.在写上面的连接字符串的时候,需要host和server分开,host代表当前的主机名,如自己的pc名或者直接写localhost;

  2.port为第一张图中的51091,如果不写,默认为1433,如果当前的数据库实例不是使用1433的端口,就会报错;


参考:https://blog.csdn.net/djx_6688/article/details/85159278

 

Guess you like

Origin www.cnblogs.com/xifengmo/p/10993287.html