Python 操作 MySQL 数据库
Python 操作 MySQL 最常用、最稳定的库是 pymysql,它纯 Python 实现,安装简单、兼容性好。
一、安装依赖
bash
运行
pip install pymysql
二、基础使用模板(最常用)
python
运行
import pymysql
1. 创建数据库连接
conn = pymysql.connect(
host='localhost', # 主机地址
port=3306, # 端口
user='root', # 用户名
password='你的密码', # 密码
database='test_db', # 数据库名
charset='utf8mb4' # 字符集
)
2. 获取游标(用于执行SQL)
cursor = conn.cursor()
3. 执行SQL语句(示例:查询)
sql = "SELECT * FROM user"
cursor.execute(sql)
获取所有结果
results = cursor.fetchall()
for row in results:
print(row)
4. 关闭游标和连接
cursor.close()
conn.close()
三、常用操作(增删改查)
- 查询数据
python
运行
查询一条
cursor.execute("SELECT name, age FROM user WHERE id=1")
one = cursor.fetchone()
print("单条数据:", one)
查询所有
cursor.execute("SELECT * FROM user")
all_data = cursor.fetchall()
print("所有数据:", all_data)
- 插入数据
必须 commit 才能真正写入!
python
运行
sql = "INSERT INTO
笔记
Python 操作 MySQL 笔记
一、使用模块
常用:pymysql
安装:pip install pymysql
二、连接数据库
python
运行
import pymysql
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='xxx',
database='test',
charset='utf8mb4'
)
获取游标
cursor = conn.cursor()
三、查询操作
python
运行
执行SQL
cursor.execute("SELECT * FROM user")
获取结果
data1 = cursor.fetchone() # 一条
data2 = cursor.fetchall() # 所有
data3 = cursor.fetchmany(3) # 前3条
四、增删改(必须提交)
插入
python
运行
sql = "INSERT INTO user(name,age) VALUES(%s,%s)"
cursor.execute(sql, ("张三", 20))
conn.commit()
批量插入
python
运行
data = [("a",10), ("b",20)]
cursor.executemany(sql, data)
conn.commit()
更新
python
运行
sql = "UPDATE user SET age=25 WHERE id=1"
cursor.execute(sql)
conn.commit()
删除
python
运行
sql = "DELETE FROM user WHERE id=1"
cursor.execute(sql)
conn.commit()
五、异常与回滚
python
运行
try:
cursor.execute(sql)
conn.commit()
except Exception as e:
conn.rollback() # 出错回滚
print(e)
六、关闭
python
运行
cursor.close()
conn.close()
七、常用要点
增删改必须 commit()
查询不用提交
占位符统一用 %s,不要拼接字符串防 SQL 注入
字符集用 utf8mb4 支持表情
异常处理 + 事务回滚