1、对数据库的增加操作

  在Django中,数据库查询需要借助objects方法,在Flask中也有类似的操作。在执行对数据库的增加操作之前,我们首先需要实例化一个session对象,这里的session指的是会话,并不是web开发中的session技术

models = SQLAlchemy(app)

session = models.session()
c1 = Test(name="python", time=datetime.datetime.now())
c2 = Test(name="mysql", time=datetime.datetime.now())
c3 = Test(name="java", time=datetime.datetime.now())
session.add_all([c1, c2, c3])
session.commit()

  执行代码,查看结果

2、对数据库的查询操作

  Flask-sqlalchemy对数据库的查询需要借助query对象

(1)查询所有query.all()

all_data = Test.query.all()
for data in all_data:
print(data)

(2)条件查询query.filter_by()

all_data = Test.query.filter_by(name="mysql")
for data in all_data:
print(data)

(3)查询单条query.get()

  与Django中ORM的get查询方法相比,Flask-SQLAlchemy的get方法只能以id为条件进行查询

data = Test.query.get(3)
print(data)

(4)查询后排序query.order_by()

all_data = Test.query.order_by("id")
for data in all_data:
print(data)

(5)分页查询

all_data = Test.query.offset(2).limit(2).all()
for data in all_data:
print(data)

  offset()中指定偏移,即查询的起始位置,limit()中指定查询的数据条数

3、对数据库的修改操作

  对数据库的修改和删除都需要先获取数据

session = models.session()
data = Test.query.get(1)
data.name = "HTML"
session.add(data)
session.commit()

4、对数据库的删除操作

session = models.session()
data = Test.query.get(1)
session.delete(data)
session.commit()

最新文章

  1. Python input 使用
  2. IIS ARR 负载均衡
  3. 学习笔记——关于HTML(含HTML5)的块级元素和行级(内联)元素总结
  4. 银狐云服务架构V0.1
  5. $.each 和$(selector).each()的区别
  6. webform注册和Repeater
  7. Python学习第八天(os)
  8. AndroidUI优化工具——HierarchyViewer
  9. BZOJ1086 [SCOI2005]王室联邦(树分块)
  10. MAC 上升级python为最新版本
  11. Swift - 设置应用程序图标的提醒个数(右上角小红圈)
  12. 【.NET-EF】Entity Framework学习笔记2 - 增删改(没查询)
  13. LINUX 笔记-tee命令
  14. 【Android入门】一个App学会安卓开发
  15. Android事件机制之二:onTouch详解
  16. Android学习(四)
  17. idea启动springboot+jsp项目出现404
  18. linux 启动管理
  19. Git——常用场景解析
  20. mysql -- 逻辑语句

热门文章

  1. 离线服务器安装zabbix
  2. ping本地局域网
  3. ElasticSearch实战系列三: ElasticSearch的JAVA API使用教程
  4. VirtualBox 启动时提示“获取 VirtualBox COM 对象失败”的解决
  5. Eclipse的Debug各种视图介绍(二)
  6. Android NDK(一) ndk-build构建工具进行NDK开发
  7. MySql权限丢失问题解决
  8. 使用 Sealos 在 3 分钟内快速部署一个生产级别的 Kubernetes 高可用集群
  9. 即学即用的 30 段 Python 实用代码
  10. Unity动态改变物体遮挡关系