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')錯誤解決


  今天在使用python3.7中的pymssql 連接sqlserver的時候遇到的問題:

  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') 

  現在已經解決,特地來進行記錄。

  1.在使用的python連接sql server的時候,先進行以下配置:

  sql server配置管理器--->SQL Server 網絡配置---->選擇當前使用的實例------>開啟TCP/IP---->找到當前的動態端口號(當前是51091),如下圖:

  2.代碼如下:

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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM