码迷,mamicode.com
首页 > 数据库 > 详细

Python学习笔记八:ORM框架SQLAlchemy

时间:2017-06-15 12:44:08      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:查询   实体类   orm框架   ima   排序   博文   面向对象   映射   子类   

一:SQLAlchemy使用

1:实体类的创建

ORM中的实体类与一般的Python类不同,在其中,使用 __tablename__=""指明该类与数据库中某个表相对应,然后定义一系列成员属性,属性值使用 Column(数据类型) 来映射到表中具体哪一列。

首先,创建数据库引擎,并由静态方法获取一个基类:declarative_base() 创建了一个 BaseModel 类,这个类的子类可以自动与一个表关联。

技术分享

然后,继承base类,定义实体类:

技术分享

带外键的实体类创建:

技术分享

 

最后,运行基类中自带的方法,把数据库引擎传进去,创建出数据库表:BaseModel.metadata.create_all(engine) 会找到 BaseModel 的所有子类,并在数据库中建立这些表

技术分享

 

2:创建记录

创建一个类实例,就对应了一条数据库记录。

技术分享

 

3:创建数据库会话

技术分享

 

4:使用面向对象的方式操作数据库

增:

增加一条记录:技术分享

增加多条记录:技术分享

 

查:

条件查询:技术分享

全表查询:技术分享

排序查询:技术分享

过滤查询(in/not in):

技术分享

技术分享

统计查询记录数:技术分享

逻辑查询:and/or后面跟左右操作数。

技术分享

技术分享

join查询:

技术分享

其他更多操作:参考这篇博文:

http://blog.csdn.net/fengzhongzhishenfu/article/details/38978863

 

5:提交事务,使持久化操作生效

技术分享

Python学习笔记八:ORM框架SQLAlchemy

标签:查询   实体类   orm框架   ima   排序   博文   面向对象   映射   子类   

原文地址:http://www.cnblogs.com/ygj0930/p/7016720.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!