之前的内容中,我们学会了如何用Python操作已经存在的表格。
但从运用上来说,依然没有办法脱离自带命令行创建表格,并用对象思维来进行操作。
为了方便,机智的程序员当然会想办法啦。
为了将关系数据库表中的记录映射成为对象,SQLAlchemy应运而生,把对数据库的操作转化为对对象的操作。
简单说,就是将类和对象转换成SQL,再使用数据API执行SQL并获取执行结果。
一、SQLAlchemy的安装
与其他库的安装方式相同,使用pip install flask-sqlalchemy命令即可,如失败可尝试镜像安装。
注意:需要确保PyMySQL已经安装。
二、对象-关系实质
回忆一下我们是如何用SQL语句创建表的:
create table book('id' int(11) NOT NULL AUTO_INCREMENT, 'title' varchar(50), 'publishing_office' varchar(100), 'isbn' varchar(4))
现在再生成一个book对象:
class Book(db.Model):
__tablename__ = 'book'
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
title = db.Column(db.String(50), nullable=False)
publishing_office = db.Column(db.String(100), nullable=False)
isbn = db.Column(db.String(100), nullable=False)
通过观察可以看出,类对象也能实现建表操作:
l book类 -> 数据库中的一张表
l book类中的属性 -> 数据库中的一张表中的字段
l book类的一个对象 -> 数据库中的一条记录(数据)
Flask-SQLAlchemy这个框架能让操作数据变成操作对象,摆脱繁琐的底层SQL语句。
可以看出,Flask-SQLAlchemy框架最大的优点就是解决了重复读取数据库的问题,使程序员高效开发成为可能。
关于框架的介绍就说这么多,下一节,我们将教大家如何初始化Flask-SQLAlchemy。
你确定不关注我一波?