常用的SQLAlchemy字段類型
類型名 | Python中類型 | 說明 |
---|---|---|
Integer | int | 普通整數,一般是32位 |
SmallInteger | int | 取值範圍小的整數,一般是16位 |
BigInteger | int或long | 不限制精度的整數 |
Float | float | 浮點數 |
Numeric | decimal.Decimal | 普通整數,一般是32位 |
String | str | 變長字符串 |
Text | str | 變長字符串,對較長或不限長度的字符串做了優化 |
Unicode | unicode | 變長Unicode字符串 |
UnicodeText | unicode | 變長Unicode字符串,對較長或不限長度的字符串做了優化 |
Boolean | bool | 布爾值 |
Date | datetime.date | 時間 |
Time | datetime.datetime | 日期和時間 |
LargeBinary | str | 二進制文件 |
常用的SQLAlchemy列選項
選項名 | 說明 |
---|---|
primary_key | 如果爲True,代表表的主鍵 |
unique | 如果爲True,代表這列不允許出現重複的值 |
index | 如果爲True,爲這列創建索引,提高查詢效率 |
nullable | 如果爲True,允許有空值,如果爲False,不允許有空值 |
default | 爲這列定義默認值 |
常用的SQLAlchemy關係選項
選項名 | 說明 |
---|---|
backref | 在關係的另一模型中添加反向引用 |
primaryjoin | 明確指定兩個模型之間使用的聯結條件 |
uselist | 如果爲False,不使用列表,而使用標量值 |
order_by | 指定關係中記錄的排序方式 |
secondary | 指定多對多中記錄的排序方式 |
secondaryjoin | 在SQLAlchemy中無法自行決定時,指定多對多關係中的二級聯結條件 |