SQLalchemy数据迁移工具有两种,migrate和alembic,后者较为灵活
Alembic
1、安装:pip install alembic
2、建立ORM模型
3、进入项目运行命令创建仓库:alembic init alembic(仓库名)
4、找到alembic.ini配置文件,修改sqlalchemy.url,与数据库连接信息一致
5、找到env.py文件,修改target_metadata参数
import sys
from os.path import abspath, dirname
sys.path.append(dirname(dirname(abspath(__file__))))
from models.base import Base
target_metadata = Base.metadata
6、创建数据库迁移文件:alembic revision --autogenerate -m “提交信息”
7、讲迁移文件映射到数据库中:alembic upgrade head
每次更新model,重复上面6/7步骤
ps: env.py文件添加监控字段类型长度和默认值
compare_type=True, # 字段类型长度
compare_server_default=True, # 默认值