python3的一个简单mysql orm

Pmorm的Python项目详细描述


中文-Chinese

py-python3的一个简单mysql orm

功能概述

  • 面向模型的操作
  • 基本积垢
  • 操作员查询
  • 自动安全逃生

安装

shell>pip install Pmorm

基本

frompmormimportMysql# Create a connection.Automatically create database(if it is not created)db=Mysql('localhost','root','your-password','testdb1')classWorker(db.Model):__table__='worker'id=db.PrimaryKeyField()username=db.VarcharField(max_length=32,nullable=False,unique=True,default=None,comment="Worker's username")password=db.VarcharField(max_length=32,nullable=False,unique=False,default=None,comment="Worker's password")salary=db.FloatField(nullable=False,unique=False,default=0.0,comment="Worker's monthly salary")Worker.create_table()# Insertjack=Worker(username='Jack',password='JackSoHandsome',salary=3999.2)jack.insert()mary=Worker()mary.username='Mary'mary.password='MarySoBeautiful'mary.insert()# Get all and get the firstall_workers=Worker.select().all()the_first_worker=Worker.select().first()# Query by operatorsrich_workers=Worker.select(Worker.salary>=3000.0).all()# Complex query by operators & and |worker_jack=Worker.select(((Worker.username=='jack')&(Worker.password=='JackSoHandsome'))|(Worker.salary=='3999.2')).first()# Order the rowsthe_richest_worker=Worker.select(orders=[-Worker.salary]).first()# Use the resultforworkerinall_workers:print('username:{} password:{} salary:{}'.format(worker.username,worker.password,worker.salary))print('And the richest worker is {}'.format(the_richest_worker.username))# Update one rowworker_jack.salary=3000.0worker_jack.update()# Delete one rowworker_jack.delete()

否则

当前支持的MySQL字段

PmormMysql
PrimaryKeyFieldNO
BooleanFieldBOOLEAN
IntFieldINT
BigIntFieldBIGINT
FloatFieldFLOAT
DoubleFieldDOUBLE
VarcharFieldVARCHAR
TextFieldTEXT

PrimaryKeyField必须在每个模型中定义,因此基本模型看起来像

mydb=Mysql('localhost','root','your-passwd','your-database')classModelName(mydb.Model):__table__='mytable'id=mydb.PrimaryKeyField()# Other fields...

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

推荐PyPI第三方库


热门话题
java Thumbnailator库将图像转换为cmyk   Java反射从目录中的类运行测试   JavaEclipseJDT编译器说方法未定义,但EclipseIDE没有   重构如何重构一行重复的java代码   java Eclipse:使用删除线文本呈现自定义注释   java问题与ArrayList复制数据   java如何在swagger中传递访问令牌?   使用另一个java文件运行java文件时出错   java为什么谷歌云存储生成的上传链接在成功上传后不会失效?   java将我的客户端PC重定向到默认登录页面   java hibernate c3p0配置mysql问题   java和java之间的区别。尼奥。文件文件和java。伊奥。文件   列出java循环并向映射中添加值   java为什么OJ报告这段代码的运行时错误?