flask-sqlalchemy为是Flask用来管理数据库的一个工具,Flask-Migrate是一个为Flask应用处理SQLAlchemy数据库迁移的扩展。
正常使用flask-migrate数据迁移的时候,是这样子的:
在这里记录下使用flask-migrate遇到的问题。
一.版本问题
自使用版本没出现问题。之前使用Flask==2.1时出现bug无法继续进行(可能和migrate版本也有关?)
之后重新安装解决问题
二.脚本更新问题
出现 can't locate version identified by 'xxxxxxxx'
进入数据库查看上个同步的脚本号
数据库下名为 version_num的表单中,找到上个文件的版本号
进入项目文件夹下 migrations/versions/.. 查看每个脚本生成日期
更改version_num表中的版本号为最近一次的日期 即可解决
三.迁移数据库时
使用 upgrade命令时的一种 raise_for_error()问题。
这个是因为在创建一个模型时候,表名使用大写字母
而在windows环境下mysql对大小写不敏感,从而导致每次在进行数据库迁移的时候都会 在mysql中创建一个新的表单,但是这个表单在数据库中已经存在,从而导致错误。
解决方法就是改掉表单中的大写字母,或者修改windows下mysql的大小写的敏感性.