100 行代码还你一个 Python ORM
轻松连接MySQL数据库 数据结构与模型的自动映射 提供增删改查的基本功能,减少手写SQL的工作量
发布日期:2025-06-19 13:14:25
浏览次数:4
分类:精选文章
本文共 1131 字,大约阅读时间需要 3 分钟。
工作中难免会遇到MySQL连接相关问题,作为一个记性不太好的开发者,我经常会临时忘记具体的连接方法。于是,我决定编写一个简洁的解决方案,帮助自己快速解决Python连接MySQL的问题。
这个小工具的目标是简化MySQL连接过程,同时解决以下三大痛点:
1. 创建数据库连接
使用简单的配置文件即可完成数据库的连接设置。例如:
from data_handler import Databasedb_config = { 'host': 'localhost', 'port': 3306, 'user': 'root', 'password': '123456', 'database': 'test'}Database.connect(**db_config) 2. 定义数据模型
通过定义模型类,可以将数据库中的表结构与Python对象进行映射。例如:
from data_handler import Model, Fieldclass TestModel(Model): db_table = 'test' a = Field() b = Field()
3. 数据插入
通过属性赋值即可完成数据插入。例如:
test = TestModel()test.a = 5test.b = 'john'test.save()
4. 数据查询
通过条件查询即可获取数据。例如:
for r in TestModel.where(a=5, b='john').select(): print(r.a) print(r.b)
5. 数据计数
支持通过条件查询计数。例如:
print(TestModel.where(a=5, b='john').count())
6. 数据更新
通过条件更新字段值。例如:
TestModel.where(a=5, b='john').update(a=1)
7. 复杂查询
支持通过raw SQL执行复杂查询。例如:
from data_handler import execute_raw_sqlresults = execute_raw_sql('select b, count(*) from test where b = %s group by b;', (1,))for val, cnt in results: print(val, cnt) 这个工具的目标是为开发者提供一个轻量级的解决方案,简化MySQL连接和操作流程,同时降低手写SQL的频率。
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2026年06月19日 04时35分23秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
phpwind部署问题
2023-02-28
PHP__call __callStatic
2023-02-28
php一句话图片运行,【后端开发】php一句话图片木马怎么解析
2023-02-28
php上传文件找不到临时文件夹
2023-02-28
PHP下curl用法分析
2023-02-28
php与web服务器关系
2023-02-28
redis事务操作
2023-02-28
PHP中array_merge和array相加的区别分析
2023-02-28
PHP中dirname(__FILE__)的意思
2023-02-28
PHP中extract()函数的妙用
2023-02-28
PHP中implode()和explode()
2023-02-28
PHP中serialize和json序列化与反序列化的区别
2023-02-28
Redis事务处理
2023-02-28
php中使用ajax进行前后端json数据交互
2023-02-28
Redis事务和锁操作
2023-02-28
PHP中如何得到数组的长度
2023-02-28
php中引入文件几种方式的区别
2023-02-28
PHP中把stdClass Object转array的几个方法
2023-02-28
PHP中替换换行符
2023-02-28
PHP中有关正则表达式的函数集锦
2023-02-28