diff options
-rw-r--r-- | fietsboek/alembic/versions/20250607_2ebe1bf66430.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/fietsboek/alembic/versions/20250607_2ebe1bf66430.py b/fietsboek/alembic/versions/20250607_2ebe1bf66430.py index 055c3be..d7c811e 100644 --- a/fietsboek/alembic/versions/20250607_2ebe1bf66430.py +++ b/fietsboek/alembic/versions/20250607_2ebe1bf66430.py @@ -5,6 +5,8 @@ Revises: 4566843039d6 Create Date: 2025-06-07 23:24:33.182649 """ +import logging + import sqlalchemy as sa from alembic import op @@ -20,7 +22,16 @@ def upgrade(): if is_sqlite: op.add_column('tracks', sa.Column('transformers_text', sa.Text, nullable=True)) op.execute('UPDATE tracks SET transformers_text=transformers;') - op.drop_column('tracks', 'transformers') + try: + op.drop_column('tracks', 'transformers') + except sa.exc.OperationalError as exc: + logging.getLogger(__name__).warning( + "Your SQLite version does not support dropping a column. " + "We're setting the content to NULL instead: %s", + exc, + ) + op.execute("UPDATE tracks SET transformers = NULL;") + op.alter_column("tracks", "transformers", new_column_name="transformers_old_delete_this_column") op.alter_column('tracks', 'transformers_text', new_column_name='transformers') else: op.alter_column('tracks', 'transformers', type_=sa.Text) |