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使用并发hashmap减少线程池的内存使用?   java为什么在提交片段后出现错误“getParentActivityIntent:badActivity name”?   vim UltiSnips扩展java包   java给出了一个名称列表,如何插入、删除、显示、搜索和退出?Java程序   java Spring集成:只从FTP服务器下载新的或更新的文件?   使用Java中的Scala:将函数作为参数传递   java线程1每秒填充一个映射,线程2每60秒保存一个条目   java从私有类访问公共类中的方法/字段   如何使用ApacheSpark流媒体和JavaAPI从所有人那里获取英语推文?   java是否可以在父标记和子标记中编写XMLSchemainstance?   java无法读取文本文件,也找不到解决方案   java在运行时加载类时无法创建bean