Python使用zdppy_mysql操作MySQL和MariaDB数据库快速入门教程

zdppy_mysql

使用python操作MySQL

项目开源地址:https://github.com/zhangdapeng520/zdppy_mysql

安装

bash 复制代码
pip install zdppy_mysql

使用教程

连接MySQL

python 复制代码
import zdppy_mysql
from config import host, username, password, database, port

# 连接数据库
db = zdppy_mysql.connect(
    host,
    username,
    password,
    database,
    port,
)
print(db)

添加数据库

python 复制代码
import zdppy_mysql
from config import host, username, password, database, port

# 连接数据库
db = zdppy_mysql.connect(
    host,
    username,
    password,
    database,
    port,
)

# 使用游标对象执行SQL语句
with db.cursor() as cur:
    # 创建数据库
    sql = "create database if not exists test"
    cur.execute(sql)

    # 查询所有数据库
    sql = "show databases"
    cur.execute(sql)
    print(cur.fetchall())

查询所有表

python 复制代码
import zdppy_mysql
from config import host, username, password, database, port

# 连接数据库
db = zdppy_mysql.connect(
    host,
    username,
    password,
    database,
    port,
    cursorclass=zdppy_mysql.cursors.DictCursor,
)

# 使用游标对象执行SQL语句
with db.cursor() as cur:
    # 查询所有数据库
    sql = "show tables"
    cur.execute(sql)
    print(cur.fetchall())

添加表

python 复制代码
import zdppy_mysql
from config import host, username, password, database, port

# 连接数据库
db = zdppy_mysql.connect(
    host,
    username,
    password,
    database,
    port,
    cursorclass=zdppy_mysql.cursors.DictCursor,
)

# 使用游标对象执行SQL语句
with db.cursor() as cur:
    # 查询所有数据库
    sql = "create table user(id int primary key auto_increment, name varchar(255))"
    cur.execute(sql)
    db.commit()

添加数据

python 复制代码
import zdppy_mysql
from config import host, username, password, database, port

# 连接数据库
db = zdppy_mysql.connect(
    host,
    username,
    password,
    database,
    port,
    cursorclass=zdppy_mysql.cursors.DictCursor,
)

# 使用游标对象执行SQL语句
with db.cursor() as cur:
    cur.execute("insert into user(name) values(%s)", ("张三1",))
    cur.execute("insert into user(name) values(%s)", ("张三2",))
    cur.execute("insert into user(name) values(%s)", ("张三3",))

    # 必须加commit才会提交到数据库保存
    db.commit()

查询所有数据

python 复制代码
import zdppy_mysql
from config import host, username, password, database, port

# 连接数据库
db = zdppy_mysql.connect(
    host,
    username,
    password,
    database,
    port,
    cursorclass=zdppy_mysql.cursors.DictCursor,
)

# 使用游标对象执行SQL语句
with db.cursor() as cur:
    # 查询所有数据库
    cur.execute("select * from user")
    print(cur.fetchall())

版本历史

  • 0.1.1 解决mysql8初次连接报auth异常的问题
  • 0.1.4 移除Database类及其他语法糖,全部移交mcrud处理

v0.1.5

  • 架构优化

注意事项

如果报权限异常错误,请手动执行依赖:

bash 复制代码
pip install cryptography
相关推荐
landyjzlai1 天前
蓝迪哥玩转Ai(8)---端侧AI:RK3588 端侧大语言模型(LLM)开发实战指南
人工智能·python
S1998_1997111609•X1 天前
论当今社会主义与人文关怀人格思想下的恶意仿生注入污染蜜罐描述进行函数值非法侵入爬虫的咼忄乂癿〇仺⺋.
数据库·网络协议·百度·ssh·开闭原则
我叫黑大帅1 天前
如何通过 Python 实现招聘平台自动投递
后端·python·面试
其实防守也摸鱼1 天前
CTF密码学综合教学指南--第九章
开发语言·网络·python·安全·网络安全·密码学·ctf
砚底藏山河1 天前
Python量化开发:2026最佳实时股票数据API接口推荐与对比
开发语言·windows·python
倔强的石头_1 天前
kingbase备份与恢复实战(六)—— 备份自动化与保留策略:Windows任务计划+日志追溯
数据库
研究点啥好呢1 天前
专为求职者开发的“面馆”!!!摆脱面试焦虑!!!
python·面试·开源·reactjs·求职招聘·fastapi
轻刀快马1 天前
别被 ORM 框架宠坏了:从一场“订单消失”悬案,看懂 MySQL 为什么要强推 InnoDB
数据库·mysql
DFT计算杂谈1 天前
自动化脚本一键绘制三元化合物相图
java·运维·服务器·开发语言·前端·python·自动化
EW Frontier1 天前
6G ISAC新范式:基于智能漏波天线的Wi‑Fi通感一体化系统设计与实测【附MATLAB+python代码】
开发语言·python·matlab·music·isac·doa·wi‑fi