pymysql 与 MySQL数据库交互

pymysql是一个Python的第三方库,用于在Python程序中与MySQL数据库进行交互。它提供了一个简单而直接的接口,使开发人员可以轻松地连接、查询和操作MySQL数据库。

pymysql的主要特点包括:

  1. 简单易用:pymysql提供了简单而直观的API,使开发人员可以快速上手并使用它来连接和操作MySQL数据库。
  2. 高性能:pymysql采用纯Python实现,并通过使用C语言的MySQL API来提高性能。
  3. 支持事务:pymysql提供了事务功能,使开发人员能够执行复杂的数据库操作,并保持数据的一致性。
  4. 支持连接池:pymysql支持连接池,可以有效地管理数据库连接,提高性能和可扩展性。
  5. 支持多线程:pymysql对多线程的支持友好,可以在多线程环境中安全地使用。

使用pymysql,开发人员可以执行各种数据库操作,包括创建、删除和修改数据库,创建和删除表,以及插入、更新和删除数据等。通过pymysql,开发人员可以快速、方便地实现与MySQL数据库的交互,并且可以轻松地将其集成到Python应用程序中。

python 复制代码
"""
python  操作数据库 pymysql
pip install pymysql
"""
# 1. 导入模块
import pymysql

# 2. 构建连接实例
con = pymysql.connect(user="zzy", password='123456')
con.select_db("python2407")

# 3. 构建游标(游动的鼠标,  用于执行sql语句)
cur = con.cursor()

# 3.1 使用游标执行sql
row = cur.execute("show tables")
# 3.2 获取游标执行结果
print(f"发现{row}个表")

# fetchall 获取所有
# datas = cur.fetchall()
# for data in datas:
#     print(data[0])

# fetch 每次获取一个
# data = cur.fetchone()
# print(data[0])
# data = cur.fetchone()
# print(data[0])
# data = cur.fetchone()
# print(data[0])

# fetchmany 获取指定个数
# datas = cur.fetchmany(size=3)
# print(datas)
#
# datas = cur.fetchmany(size=2)
# print(datas)

# 取两个
datas = cur.fetchmany(size=2)
print(datas)
# 控制游标位置 相对偏移 正值前进 负值倒退
# cur.scroll(-1, mode='relative')

# 控制游标位置  绝对位置偏移  只能是0-length-1
cur.scroll(2, mode='absolute')
data = cur.fetchone()
print(data)



# 4. 关闭游标 关闭 连接
cur.close()
con.close()
相关推荐
小马爱打代码4 小时前
Redis 集群方案详解:主从复制、哨兵、脑裂、分片集群和哈希槽
数据库·redis·哈希算法
海南java第二人5 小时前
ClickHouse 稀疏索引深度解析:为什么 OLAP 数据库不用 B-Tree?
数据库·clickhouse
Litluecat5 小时前
信创迁移:Oracle切换海量数据库,慢sql扫描
数据库·sql·oracle·信创·海量
消失在人海中6 小时前
Oracle的CURRENT REDO丢失,数据丢失风险分析
数据库·oracle
喵了几个咪6 小时前
选择第三方IAM还是自建权限体系?中小型后台系统权限架构决策指南
数据库·oracle·架构
Elastic 中国社区官方博客7 小时前
Kibana:使用 AI Chat 及 MCP 轻松创建 AI 原生仪表板
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·信息可视化
杨云龙UP8 小时前
Oracle Health Check巡检脚本使用SOP V2.0:从HTML原始报告→生成Word专业巡检报告→交付客户_2026-06-03
linux·运维·数据库·sql·oracle·报告·巡检
Database_Cool_8 小时前
Hudi 湖仓一体架构:阿里云 AnalyticDB MySQL 原生集成最佳实践
数据库·mysql·阿里云
我是一颗柠檬8 小时前
【Redis】发布订阅与消息队列Day8(2026年)
数据库·redis·后端·缓存