flask 数据库详细操作

本文介绍了使用Flask-SQLAlchemy进行数据库操作的方法,包括ORM的概念、Flask-SQLAlchemy的安装、数据库连接设置,以及数据库的基本操作,如创建表、删除表、插入数据、查询和更新等,并涉及到了关联查询的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

 

一.ORM

二.Flask-SQLAlchemy

三、数据库连接设置

四、数据库基本操作

1、创建表:

2、删除表

3、插入一条数据

4、一次插入多条数据

5、filter_by精确查询

6、all()返回查询到的所有对象

7、filter模糊查询

8、get():

9、逻辑非

10、not_ 相当于取反

11、逻辑与

12、逻辑或

13、查询数据后删除

14、更新数据

15、关联查询示例:

别说自己尽力了,那只是自欺欺人的假话。


一.ORM

**ORM** 全拼`Object-Relation Mapping`,中文意为 **对象-关系映射**。主要实现模型对象到关系数据库数据的映射

优点 :

- 只需要面向对象编程, 不需要面向数据库编写代码.

  - 对数据库的操作都转化成对类属性和方法的操作.

  - 不用编写各种数据库的`sql语句`.

- 实现了数据模型与数据库的解耦, 屏蔽了不同数据库操作上的差异.

  - 不再需要关注当前项目使用的是哪种数据库。

  - 通过简单的配置就可以轻松更换数据库, 而不需要修改代码.

缺点 :

- 相比较直接使用SQL语句操作数据库,有性能损失.

- 根据对象的操作转换成SQL语句,根据查询的结果转化成对象, 在映射过程中有性能损失.

二.Flask-SQLAlchemy

flask默认提供模型操作,但是并没有提供ORM,所以一般开发的时候我们会采用flask-SQLAlchemy模块来实现ORM操作。

SQLAlchemy是一个关系型数据库框架,它提供了高层的 ORM 和底层的原生数据库的操作。flask-sqlalchemy 是一个简化了 SQLAlchemy 操作的flask扩展。

SQLAlchemy: https://www.sqlalchemy.org/

安装 flask-sqlalchemy
    pip install flask-sqlalchemy

如果连接的是 mysql 数据库,需要安装 mysqldb **驱动**

    pip install flask-mysqldb

三、数据库连接设置

- 在 Flask-SQLAlchemy 中,数据库使用URL指定,而且程序使用的数据库必须保存到Flask配置对象的 **SQLALCHEMY_DATABASE_URI** 键中
    app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:mysql@127.0.0.1:3306/test'

- 其他设置:

# 动态追踪修改设置,如未设置只会提示警告
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
#查询时会显示原始SQL语句
app.config['SQLALCHEMY_ECHO'] = True

- 配置完成需要去 MySQL 中创建项目所使用的数据库

$ mysql -uroot -p123456
$ create database flaskdemo charset=utf8;

四、数据库基本操作

- 在Flask-SQLAlchemy中,插入、修改、删除操作,均由数据库会话管理。
  - 会话用 db.session 表示。在准备把数据写入数据库前,要先将数据添加到会话中然后调用 commit() 方法提交会话。
- 在 Flask-SQLAlchemy 中,查询操作是通过 query 对象操作数据。
  - 最基本的查询是返回表中所有数据,可以通过过滤器进行更精确的数据库查询。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值