Python 操作 MySQL 数据库

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()

三、常用操作(增删改查)

  1. 查询数据

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)

  1. 插入数据

必须 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 支持表情

异常处理 + 事务回滚

相关推荐
曹牧4 小时前
Oracle EXPLAIN PLAN
数据库·oracle
BD_Marathon4 小时前
SQL学习指南——视图
数据库·sql
活宝小娜4 小时前
mysql详细安装教程
数据库·mysql·adb
贤时间4 小时前
codex 助力oracle ebs 开发
数据库·oracle
秉承初心5 小时前
PostgreSQL 数据性能瓶颈突破实战
数据库·postgresql·oracle
Database_Cool_5 小时前
即席查询(Ad-Hoc)数据库选型:AnalyticDB MySQL 秒级 Ad-Hoc 分析方案
数据库·mysql
Nontee5 小时前
新手数据库进阶:一条UPDATE语句的“奇妙漂流”
数据库
赵渝强老师6 小时前
【赵渝强老师】openGauss的数据库
数据库·opengauss·国产数据库·高斯数据库
HackTwoHub6 小时前
Sqli-Scanner SQL注入SKILL自动化挖掘SQL注入,零依赖自动化SQL注入挖掘,赏金猎人
数据库·人工智能·sql·web安全·网络安全·自动化·系统安全