基于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 Requestcontextholder在spring 4中具有并发访问权限。IBMWebSphere上的x Web应用程序?   java如何下载、设置和使用Eclipse?   java如何组合这些mysql语句   java JDBC无法连接到openshift上的mysql数据库   如果存在允许正确处理的重载,java对于方便的方法来说是否可行?   使用hibernate序列的java Spring MVC不存在   具有路径的java Selenium ChromeDriver负载扩展问题   读一本书。java中的java文件   退出队列时,Java队列程序结果为空   Java lambda返回带有重复代码问题的列表   java使用意图从其他活动传递数据并在listview中显示   java如何在java中创建JSON输出   java Android:在不破坏或暂停活动的情况下关闭显示   支持Android电视和手机的java多apk   关于Java应用程序测试和调试的一组问题   如何在JavaSE中使用jdbcRealmShiro进行授权   在java中是否有一个无异常检查的URL解析实用程序?   当页面上有多个相同类型的元素时,java会选择一个特定的元素   递归需要帮助发现java代码中的缺陷