flask数据库增删改查

在上一篇文章中介绍了flask连接数据库。这次介绍数据库的增删改查操作
查询数据
① 查询所有
在这里插入图片描述
② 按条件查询
方式一、不需要写创建表的类,用‘=’号,filter_by(精确查找)
在这里插入图片描述
方式二、注意字段名前要写创建表的类,一定要用‘==’号,filter(模糊查找)
在这里插入图片描述
③ 查询第一个
在这里插入图片描述
④ 通过主键ID查询
如果主键存在,返回一个对象
在这里插入图片描述
如果主键不存在,没有返回值
在这里插入图片描述
⑤ 查询姓名以老开头的同学
在这里插入图片描述
⑥ 查询名字以‘王’结尾的同学
在这里插入图片描述
⑦ Not_查询
查询名字不等于‘xiaowang’的同学,not_()逻辑非,需要导包
方式一:
在这里插入图片描述
方式二:
在这里插入图片描述
⑧ In查询
在这里插入图片描述
⑨ 多条件查询
在这里插入图片描述
or_(逻辑或)和and_(逻辑与)

Or查询 :
在这里插入图片描述
And查询:
在这里插入图片描述
⑩ 分页查询,查询第二页,每页3条数据
在这里插入图片描述
更新数据
更新一个字段:更新操作一定要commit
在这里插入图片描述
删除数据
删除id为2的用户,删除也要commit
在这里插入图片描述
外键查询
模型类

class Role(db.Model):
    __tablename__ = 'roles'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(20), unique=True)

    #     在主表添加关系,与用户表产生关系,代表整个角色下的所有用户
    users = db.relationship('User', backref='role', lazy='dynamic')
    # backref='role'反向作用
    # lazy='dynamic'用到的时候关联加载
    # lazy='subquery'加载完对象后立即加载

    def __repr__(self):
        return self.name


class User(db.Model):
    __tablename__ = 'users'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(20), unique=True)
    email = db.Column(db.String(30), nullable=True)
    is_delete = db.Column(db.Boolean, default=False)
    # 添加外键
    role_id = db.Column(db.Integer, db.ForeignKey('roles.id'))

    def __repr__(self):
        return self.name

① 查询角色ID为2的所有用户
在这里插入图片描述
在这里插入图片描述
② 查询ID为2的用户的角色
在这里插入图片描述

添加数据
① 添加一条数据
在这里插入图片描述
② 添加多条数据
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值