news 2026/7/15 4:42:52

python连接数据库

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python连接数据库

目前常用SQL Server和MySQL两种数据库,记录一下用python分别连接两种数据库的方式。

一、SQLServer

pip install pymssql

1. 测试数据库连接是否成功

importpymssql# 创建数据库连接conn=pymssql.connect(host='ip',port=yourport,database='databasename',user='username',password='userpwd',charset='GB18030'# 数据库的排序规则,出现文字乱码可添加(根据自己数据库的排序规则))ifconn:# 通过数据库连接建立游标cursor=conn.cursor()# 执行sqlcursor.execute("select * from tablename")# 结果读取的三种方式# fetchall():全部# fetchmany(2):指定读取两行# fetchone():只读取第一行result=cursor.fetchall()print("查询结果:",result)# 关闭cursor.close()conn.close()print("测试执行完毕!")

ip:如10.129.56.63
port:SQLServer默认端口是1433(考虑安全的话可用nginx将1433代理成别的端口)
databasename:其中某个数据库名
username:数据库账户名
userpwd:数据库账户名密码

2. 多次使用,封装到一个py中调用

由于重复使用性,在每个py文件中都写一遍太麻烦,可以把数据库连接的部分封装在一个db.py文件中,别的py文件调用即可。

db.py
importpymssql# 定义一个数据连接中的公共参数SERVER='ip"port'USER='username'PWD='userpwd'# 数据库连接函数,动态参数是数据连接中的某个数据库名defget_db_connection(database_name):returnpymssql.connect(server=SERVER,user=USER,password=PWD,database=database_name)
test.py
fromdbimportget_db_connectiondefgetData():conn=get_db_connection("test")cursor=conn.cursor()cursor.execute("update yuangong set name='李四' where Id=41")conn.commit()# 除查询外,修改操作要有事务提交,保证数据变更生效rows=cursor.rowcount cursor.close()conn.close()returnrowsif__name__=='__main__':affected_rows=getData()print(f"更新成功,共更新{affected_rows}行数据!")

二、MySQL

pip install mysql-connector-python

测试连接

frommysqlimportconnector# 创建数据库连接conn=connector.connect(host='ip',port=yourport,database='databasename',user='username',password='userpwd')ifconn:# 通过数据库连接建立游标cursor=conn.cursor()# 执行sqlcursor.execute("select * from tablename")result=cursor.fetchall()print("查询结果:",result)# 关闭cursor.close()conn.close()print("测试执行完毕!")
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 10:52:12

PyTorch-2.x镜像为何快?阿里源加速下载实战评测

PyTorch-2.x镜像为何快?阿里源加速下载实战评测 1. 镜像到底快在哪?不只是预装那么简单 你有没有经历过这样的场景:刚搭好GPU服务器,第一件事就是 pip install torch torchvision torchaudio,然后眼睁睁看着进度条卡…

作者头像 李华
网站建设 2026/7/4 5:56:34

高项考试指南

“高项”考试指南:信息系统项目管理师(高级) “高项”通常是指信息系统项目管理师(高级)考试,属于中国计算机技术与软件专业技术资格(水平)考试(简称“软考”&#xff0…

作者头像 李华
网站建设 2026/7/4 3:52:00

Dify迭代节点完全手册:从入门到精通处理动态列表数据

第一章:Dify迭代节点的核心概念与作用 Dify 是一个面向 AI 应用开发的低代码平台,其核心能力之一是通过“迭代节点”实现对数据流的循环处理。迭代节点允许开发者在工作流中对列表或数组类型的数据进行逐项处理,适用于批量推理、数据清洗、多…

作者头像 李华
网站建设 2026/7/13 18:23:32

【Dify高级用法】:Iteration节点处理数组数据的3种高阶模式

第一章:Iteration节点的核心机制与数据流原理 基本概念与运行模型 Iteration节点是工作流系统中用于实现循环处理的关键组件,其核心功能是在满足特定条件时重复执行一组操作。该节点通过接收输入数据流,并在每次迭代中处理一个元素&#xff…

作者头像 李华
网站建设 2026/7/1 10:56:10

写在前面:为什么选择前后端分离?而不是不分离

为什么选择前后端分离,而不是不分离 虽然不分离(如使用 Thymeleaf 模板引擎)在初期配置上看似简单,但从就业竞争力、技术趋势以及项目维护性来看,前后端分离是目前大学毕设的“标准答案”。 1.为什么首选前后端分离&am…

作者头像 李华