基于pymysql的简单mysql orm

simpysql的Python项目详细描述


SimpySql

一个数据库orm, 目前支持mysql, mongodb

mysql文档 , mongo文档

安装

pip install simpysql

初始化

你需要在你的项目根目录下创建一个.env文件,内容如下:

[default]#数据库配置名称(对应model.__database__)DB_TYPE=mysql#数据库类型 mysql 或者 mongoDB_HOST=127.0.0.1#数据库IP                          DB_PORT=3306#端口DB_NAME=test_db1#库名DB_USER=root#账号DB_PASSWORD=123456#密码DB_CHARSET=utf8mb4#数据库编码LOG_DIR=/home/logs/python/#开启日志, 日志路径: /home/logs/python/[test_db2]#其他的库DB_TYPE=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_NAME=test_db2DB_USER=rootDB_PASSWORD=123456DB_CHARSET=utf8mb4#LOG_DIR=/home/logs/python/                     #关闭日志

创建表model

创建数据库model 并继承simpysql.DBModel:

#!/usr/bin/python# -*- coding: UTF-8 -*-fromsimpysql.DBModelimportDBModelclassModelDemo(DBModel):__basepath__='/home/project/'# .env 文件路径#__database__ = 'default'                   # 库选择, 没有该属性,则默认default库__tablename__='lh_test'# table name__create_time__='create_time'# 自动添加创建时间字段create_time(精确到秒), 设置为None或者删除该属性,则不自动添加 __update_time__='update_time'# 自动更新时间字段update_time(精确到秒), 设置为None或者删除该属性,则不自动更新columns=[# table columns'id','name','token_name','status','create_time','update_time',]# 可以通过该方法设置自动添加时间字段的格式# def fresh_timestamp(self):#     return datetime.datetime.now().strftime("%Y%m%d")

操作实例

ModelDemo().where('id',4).select('id','name').take(5).get()

其他

欢迎志同道合的朋友一起参与本项目开发SQLServer、PostgreSQL开发, 联系方式: 490573621@qq.com

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java中ArrayList的超简单问题   Java 8在一段时间后过期   java如何创建具有用户定义维度的矩阵,并使用从上到下、从左到右的递增值填充它?   java从JDBC重启mysql   带有sqlite的java LiveData未更新UI   带有JDialog的java小程序在Mac OSX中未正确隐藏   java ActionListener无法从公共类引用数组?   java Apache Digester:NoSuchMethodException:没有这样的可访问方法   安卓中数据库中的java数据没有以正确的格式检索   java快速排序实现:使用random pivot时几乎排序   安卓 Java:高效的ArrayList过滤?   java如何在单独的文件中制作GUI程序   jasper报告如何从JSP或Java代码在JasperReport中传递参数值?