python无法连接SQL SERVER问题解决

python无法连接SQL SERVER问题解决

问题描述

在使用pymssql实现对SQL server的访问,使用的代码如下:

复制代码
import pymssql
server = 'WIN-20240824UWC\\SQLEXPRESS'
user = 'sa'
password = '123456'
database = 'easyMES'
conn = pymssql.connect(server = server,user=user,password=password,database=database)

发现系统会报错如下:

复制代码
Traceback (most recent call last):
  File "src\\pymssql\\_pymssql.pyx", line 650, in pymssql._pymssql.connect
  File "src\\pymssql\\_mssql.pyx", line 2158, in pymssql._mssql.connect
  File "src\\pymssql\\_mssql.pyx", line 712, in pymssql._mssql.MSSQLConnection.__init__
  File "src\\pymssql\\_mssql.pyx", line 1884, in pymssql._mssql.maybe_raise_MSSQLDatabaseException
  File "src\\pymssql\\_mssql.pyx", line 1901, in pymssql._mssql.raise_MSSQLDatabaseException
pymssql._mssql.MSSQLDatabaseException: (20009, b'DB-Lib error message 20009, severity 9:\nUnable to connect: Adaptive Server is unavailable or does not exist (localhost)\nDB-Lib error message 20009, severity 9:\nUnable to connect: Adaptive Server is unavailable or does not exist (localhost)\n')

此报错的原因是由于python无法链接到对应的SQL SERVER.

处理方法

基于python实现和SQL SERVER的数据访问,需要确保SQLSERVER的TCP/IP的访问权限是开启的,通过如下步骤开启对应服务:

  1. SQL SERVER CONFIGURATION ,打开SQL的配置工具;
  2. SQL SERVER网络配置,选择网络配置选项卡进行网络配置
  3. SQLEXPRESS的协议 选中SQLEXPRESS协议选项卡;
  4. TCP/IP ,选择TCP/IP协议;
  5. 双击修改协议 使能TCP/IP;
  6. 修改 IP地址 的配置,将IPAll的TCP动态端口置为空,将TCP端口修改为1433;
    修改后的协议和IP地址选项卡如下图所示:
相关推荐
夏幻灵5 小时前
JavaScript this 面试:五种绑定规则、优先级与常见面试陷阱
开发语言·javascript·面试
程序猿编码5 小时前
榨干 RTX5090 算力!Qwen3 专用单卡推理引擎,手写C++/CUDA 算子实现 MTP 推测解码
开发语言·c++·大模型推理·qwen3·多模态推理
bkspiderx7 小时前
Qt 插件机制:动态扩展应用功能的核心框架
开发语言·qt·元数据·qt 插件·qpluginloader
程序员老陆7 小时前
深入理解 C++ thread_local:线程私有存储的正确打开方式
开发语言·c++·程序设计
沐晓时光7 小时前
C语言入门,深入理解指针(3)
c语言·开发语言
码云数智-园园7 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
禾小西8 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis
我不是阵雨8 小时前
JDK 21虚拟线程Pinning陷阱:一文拔钉解困
java·开发语言
全栈练习生8 小时前
AI Agent 沙箱
python·ai
徐小黑ACG9 小时前
Golang 基础05 结构体struct
开发语言·算法·golang