SQLAlchemy列类型和选项、关系选项

SQLAlchemy列类型

类型名Python类型说明
Integerint普通整数,一般是32位
SmallIntegerint取值范围
BigIntegerint或long不限制精度的整数
Floatfloat浮点数
Numericdecimal.Decimal定点数
Stringstr变长字符串
Textstr变长字符串,对较长或不限长度的字符串做了优化
Unicodeunicode变长Unicode字符串
UnicodeTextunicode变长Unicode字符串,对较长或不限长度的字符串做了优化
Booleanbool布尔值
Datedatetime.date日期
Timedatetime.time时间
DateTimedatetime.datetime日期和时间
Intervaldatetime.timedelta时间间隔
Enumstr一组字符串
PickleType任何Python对象自动使用Pickle序列号
LargeBinarystr二进制文件

SQLAlchemy列选项

选项名说明
primary_key如果设为True,这列就是表的主键
unique如果设为True,这列不允许出现重复的值
index如果设为True,这列创建索引,提升查询效率
nullable如果设为True,这列允许使用空值;如果设为False,这列不允许使用空值
default为这列定义默认值

SQLAlchemy关系选项

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值