用 SQLAlchemy 写 ORM 时经常需要修改数据表字段,这时一般方法是手动改数据表,还可能要处理新增的 not null 字段的默认值,比较麻烦。
因此我们选择 alembic 完成数据库迁移操作,快捷更新表结构。
操作
官网有详细教程,这里说明一下我的操作过程,列一下遇到的坑。
创建环境
假设已经用 poetry 创建好了虚拟环境。
poetry add alembic
Original...About 7 min
用 SQLAlchemy 写 ORM 时经常需要修改数据表字段,这时一般方法是手动改数据表,还可能要处理新增的 not null 字段的默认值,比较麻烦。
因此我们选择 alembic 完成数据库迁移操作,快捷更新表结构。
官网有详细教程,这里说明一下我的操作过程,列一下遇到的坑。
假设已经用 poetry 创建好了虚拟环境。
poetry add alembic
需求
有两个数据表,主要字段如下:
Food
: id
, name
Weigh
: id
, food_id
, weight
需要统计每个 Food
的 weight
的数量、平均数、标准差。