我正在使用SqlAlchemy和Flask-migrate进行数据库迁移.我已经成功init了DB和upgrade一次,但是当我删除了我的表列的一个,我设法migrate但是upgrade给了我以下错误:
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) near "DROP": syntax error [SQL: u'ALTER TABLE posts DROP COLUMN tags']
Run Code Online (Sandbox Code Playgroud)
我的models.py有一部分
class Post(db.Model):
__tabelname__ = 'posts'
id = db.Column(db.Integer, primary_key=True)
body = db.Column(db.UnicodeText)
# tags = db.Column(db.Unicode(32))
# I deleted this field, upgrade give me error
....
Run Code Online (Sandbox Code Playgroud)
然后我再次运行python manage.py db upgrade,错误改变了!
(venv)ncp@ubuntu:~/manualscore$ python manage.py db upgrade
INFO [alembic.migration] Context impl SQLiteImpl.
INFO [alembic.migration] Will assume non-transactional DDL.
INFO [alembic.migration] Running upgrade 555b78ffd5f -> 2e063b1b3164, add tag …Run Code Online (Sandbox Code Playgroud)