[modify] migration script
This commit is contained in:
@@ -25,22 +25,24 @@ def upgrade() -> None:
|
||||
op.alter_column('memory_config', 'group_id', new_column_name='end_user_id')
|
||||
|
||||
# 3. config_id: INTEGER -> UUID(保留旧值以便回滚)
|
||||
op.alter_column('memory_config', 'config_id', new_column_name='config_id_old')
|
||||
op.drop_constraint('data_config_pkey', 'memory_config', type_='primary')
|
||||
op.alter_column('memory_config', 'config_id', new_column_name='config_id_old', nullable=True)
|
||||
op.add_column('memory_config', sa.Column('config_id', sa.UUID(), nullable=True))
|
||||
op.execute("UPDATE memory_config SET config_id = apply_id::uuid")
|
||||
op.drop_constraint('data_config_pkey', 'memory_config', type_='primary')
|
||||
op.alter_column('memory_config', 'config_id', nullable=False)
|
||||
op.create_primary_key('memory_config_pkey', 'memory_config', ['config_id'])
|
||||
op.execute("DROP SEQUENCE IF EXISTS data_config_config_id_seq")
|
||||
|
||||
|
||||
def downgrade() -> None:
|
||||
# 1. config_id: UUID -> INTEGER(恢复旧值)
|
||||
# 1. config_id: UUID -> INTEGER(恢复旧值,空值生成新ID)
|
||||
op.execute("CREATE SEQUENCE IF NOT EXISTS data_config_config_id_seq")
|
||||
op.execute("UPDATE memory_config SET config_id_old = nextval('data_config_config_id_seq') WHERE config_id_old IS NULL")
|
||||
op.drop_constraint('memory_config_pkey', 'memory_config', type_='primary')
|
||||
op.drop_column('memory_config', 'config_id')
|
||||
op.alter_column('memory_config', 'config_id_old', new_column_name='config_id')
|
||||
op.alter_column('memory_config', 'config_id_old', new_column_name='config_id', nullable=False)
|
||||
op.create_primary_key('data_config_pkey', 'memory_config', ['config_id'])
|
||||
op.execute("CREATE SEQUENCE IF NOT EXISTS data_config_config_id_seq OWNED BY memory_config.config_id")
|
||||
op.execute("ALTER SEQUENCE data_config_config_id_seq OWNED BY memory_config.config_id")
|
||||
op.execute("SELECT setval('data_config_config_id_seq', COALESCE((SELECT MAX(config_id) FROM memory_config), 1))")
|
||||
|
||||
# 2. 重命名列 end_user_id -> group_id
|
||||
|
||||
Reference in New Issue
Block a user