Flask基础知识(三)

Flask使用SQLAlchemy

pip install flask-sqlalchemy


最常用SQLAlchemy列类型
Integer int 普通整数,通常是32位
SmallInteger int 取值范围小的整数,通常是16位
BigInteger int或long 不限制精度的浮点数
Float float 浮点数
Numeric decimal.Decimal 定点数
String str 变长字符串
Text str 变长字符串,对较长或不限宽度的字符串做了优化
Unicode unicode 变长Unicode字符串
UnicodeText unicode 变长Unicode字符串,对较长或不限宽度的字符串做了优化
Boolean bool 布尔值
Date datetime.date 日期
Time datetime.time 时间
Datetime datetime.datetime

日期和时间

Interval datetime.timedelta 时间间隔
Enum str 一组字符串
PickleType 任何Python对象 自动使用Pickle序列化
LargeBinary str 二进制blob

最常用的SQLAlchemy列选项
primary_key 表的主键
unique 不允许出现重复的值,唯一索引
index 为列创建索引,提升查询效率
nullable 列允许使用空值
defaul 列定义默认值

常用的SQLAlchemy关系选项
backref 在关系的另一个模型中添加反向引用
primaryjoin 明确指定两个模型之间使用的联结条件,只在模棱两可的关系中需要制定
lazy 指定如何加载相关记录,可选值有select(首次访问需要加载)immediate(源对象加载后就加载)joined(加载记录,但使用联结)subquery(立即加载,但使用子查询)noload(永不加载)dynamic(不加载记录,但提供加载记录的查询)
uselist 如果设为False,不适用列表而使用标量值
order_by 指定关系记录中的排序方式
secondary 指定多对多关系中关联表的名称
secondaryjoin sqlalchemy无法自行决定时,指定多对多关系中的二级联结条件

猜你喜欢

转载自blog.csdn.net/Tony10010/article/details/85038246