alembicの$ alembic revision --autogenerate
ではデータ型の変更を認識してくれないため、revisionファイルに型を明示的に宣言する必要がある。
下の例では、column_nameカラムの型を String(255)からText()型へ変更する。
alembic_revision_file
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.alter_column('table_name', 'column_name',
existing_type=sa.String(255),
type_=sa.Text()
)
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.alter_column('table_name', 'column_name',
existing_type=sa.Text(),
type_=sa.String(255),
)
# ### end Alembic commands ###
参考文献:https://eshlox.net/2017/08/06/alembic-migration-for-string-length-change