python ORM概念与操作

SQLAlchemy 是一种对象关系映射模型(Object Relational Mapper), 简称ORM。

它展现了一种将用户定义的python中的类映射到数据库中表的方法。类的实例,就相当于表中的一行数据。简单来说呢, 就是让我们从SQL语句中抽离出来,只需要按照python的语法来写, 它会自动转换为相对应的SQL语句。SQLAlchemy 仅仅是python的orm框架中的一种实现。


SQLAlchemy的使用

1. 所有的数据库操作, 我们首先要创建一个连接。 告诉我们的代码, 连接到我们数据库的路径。

create_engine的可选参数很多, 有几个比较常用的。

echo: True的时候,会打印所有的状态变化, 包括转换的SQL语句。

max_overflow : 允许连接到数据库的最大连接数.

2. 然后创建一个声明类,映射类到表的关系。

declarative_base()构造一个自定义的声明的类,调用这个方法, 可以产生一个基类。这个基类,和它的子类,可以通过接受到的数据呢, 映射成一张表。所以, 如果我们要操作数据库中的表, 我们都必须继承这个基类。

3. 数据库中的表


每个类一定要有__tablename__ 也就是一定要有表名。

Column : 代表数据表中的一列。

它的常用参数有:

autoincrement : 表示字段是自增的。

index : 设置这个字段为索引。

primary_key : 设置此字段为主键。

然后把表格创建出来就行拉。

4 . 创建数据表

这样就可以根据我们之前的定义的元数据, 创建出我们要的数据表啦。

元数据其实就是描述数据的数据。我们要告诉计算机, 我要的表叫什么名字, 在哪个数据库, 你可以怎么连接它。这些就是元数据啦。

5 . 插入数据

  

首先, 我们可以根据字面意思看到。会话制造工厂。然后实例了session。sessionmaker 是一个可以不断产生新会话的类。

在sqlaAlchemy中, 我们通过create_engine 建立连接, 通过会话来建立自己代码与数据库的通信(其实, 和游标的作用很相似)。


首先写入一行的数据item、插入数据add()、提交数据commit()、关闭连接close()。这样就完成了数据的插入啦。

6 . 查询数据

  • query.all(),all()返回列表
  • query.first():返回第一个元素
  • query.one()有且只有一个元素时才正确返回。

如果我们只想要查询其中几个字段;


也可以查询的字段中过滤id大于100的信息;


查询所有信息中其他信息的所有信息;

filter_by :可以通过列表做一些简单的查询。

filter :可以做filter_by做的事情, 同时它还能兼容一些sql的语法。

filter 中的>, 这意味着它接受可选数量的表达式,你可使用sql表达式或者keyword表达式。


filter_by 中是 = 接受的是一个关键字


  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值