【发布时间】:2020-02-04 22:35:44
【问题描述】:
我正在尝试向现有表添加新列,但在删除 server_default 时出错。
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision = 'a29663449f3c'
down_revision = 'e42f9a7ca3d2'
branch_labels = None
depends_on = None
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.add_column('register_code', sa.Column('interest', sa.Integer(), nullable=False, server_default='0'))
op.alter_column('register_code', 'interest', server_default=None)
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.drop_column('register_code', 'interest')
# ### end Alembic commands ###
执行flask db migrate时出现下一个错误
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) near "ALTER": syntax error
[SQL: ALTER TABLE register_code ALTER COLUMN interest DROP DEFAULT]
(Background on this error at: http://sqlalche.me/e/e3q8)
也许 SQLLite 不支持删除 server_default?
【问题讨论】:
标签: python sqlalchemy alembic