Python(pymysql包)操作MySQL【增删改查】

下载pymysql:

pip install pymysql

在MySQL中创建数据库:unicom

sql 复制代码
create database unicom DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

use unicom;

在unicom中创建数据表:admin

sql 复制代码
create table admin(
	id int not null primary key auto_increment,
        username varchar(16) not null,
        password varchar(64) not null,
        mobile char(11) not null
);

1.插入数据

python 复制代码
import pymysql

# 1.连接MySQL
conn = pymysql.connect(host="127.0.0.1", port=3306, user='root', passwd="123456", charset='utf8', db='unicom')
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

# 2.发送指令
cursor.execute("insert into admin(username,password,mobile) values('doufuru','DFL123456','1888888888')")
conn.commit()

# 3.关闭
cursor.close()
conn.close()

记得端口号、用户名、用户密码要写对

python中运行成功后,在mysql中查询表中的数据:插入成功

发送指令的代码,还有下面两种方式(最好严格按照下面方式之一进行拼接,即cursor.execute自带的参数方法):

python 复制代码
# 2.发送指令
sql = "insert into admin(username,password,mobile) values(%s,%s,%s)"
cursor.execute(sql,["贯一", "G123456", "1766666666"])
conn.commit()
python 复制代码
# 2.发送指令
sql = "insert into admin(username,password,mobile) values( %(n1)s, %(n2)s, %(n3)s)"
cursor.execute(sql, {"n1": "兰亭", "n2": "L123456", "n3": "1597777777"})
conn.commit()

结果:

2.查询数据

python 复制代码
import pymysql

# 1.连接MySQL
conn = pymysql.connect(host="127.0.0.1", port=3306, user='root', passwd="123456", charset='utf8', db='unicom')
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

# 2.发送指令
cursor.execute("select * from admin where id > %s", [2, ])

data_list = cursor.fetchall()
for row_dict in data_list:
    print(row_dict)

conn.commit()

# 3.关闭
cursor.close()
conn.close()

有变化的是发送指令这一步

cursor.fetchall():获取符合条件的所有数据,得到的是字典,字典,形式

cursor.fetchone():获取符合条件的第一条数据,字典形式

查询结果:

3.删除数据

python 复制代码
import pymysql

# 1.连接MySQL
conn = pymysql.connect(host="127.0.0.1", port=3306, user='root', passwd="123456", charset='utf8', db='unicom')
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

# 2.发送指令
cursor.execute("delete from admin where id=%s", [2, ])
conn.commit()

# 3.关闭
cursor.close()
conn.close()

上面指令是删除id等于2的那一行

运行之前的表数据为:

运行之后的表数据为:

4.修改数据

python 复制代码
import pymysql

# 1.连接MySQL
conn = pymysql.connect(host="127.0.0.1", port=3306, user='root', passwd="123456", charset='utf8', db='unicom')
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

# 2.发送指令
cursor.execute("update admin set mobile=%s where id=%s", ["1788888888", 8, ])
conn.commit()

# 3.关闭
cursor.close()
conn.close()

将id为8的mobile修改为1788888888

运行前后数据表:

切记conn.commit()一定不能忘

学习:【最新Python的web开发全家桶(django+前端+数据库)-哔哩哔哩】 https://b23.tv/VtRGLgq

相关推荐
风哥2号7 小时前
数据库教程FGMT27‑MySQL数据库基础知识与体系架构
数据库·mysql
YangYang9YangYan8 小时前
2026 校招商品分析岗位 JD 拆解,核心指标、工具与面试考点
大数据·数据库·数据分析
西安栈上月明软件科技9 小时前
从业务黑话到本体图谱:OAG本体建模五步法(西安老系统AI化改造实战)
数据库·人工智能·架构
anxiao_m9 小时前
跨云跨机房大数据迁移怎么选?不同场景工具适配指南
数据库·云启快传
风哥2号11 小时前
数据库教程FGMT43‑MySQL性能分析与优化调整
数据库·mysql
随身数智备忘录12 小时前
财务数据分析如何与业务场景结合?财务数据分析如何从数出有据到数出有用?
数据库
这个DBA有点耶13 小时前
数据库教程:从零基础到实战的完整学习路径(2026版)
数据库·程序员·代码规范
forestsea13 小时前
从零构建 Java 智能体 RAG 系统:Milvus 向量数据库实战指南
java·数据库·milvus
默 语14 小时前
Java新手入门:从零开始安装JDK并配置环境变量
java·开发语言·python·mysql·group by·1024程序员节·数据去重
probex_14 小时前
从 ByConity 到 VictoriaMetrics:一次指标数据迁移引发的四种存储对比
数据库