"""202511291902 Revision ID: d1e56ecbf058 Revises: e225ed10f5cb Create Date: 2025-11-29 18:14:38.529466 """ from typing import Sequence, Union from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision: str = 'd1e56ecbf058' down_revision: Union[str, None] = 'e225ed10f5cb' branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: # ### commands auto generated by Alembic - please adjust! ### # 先删除依赖的视图(如果存在) op.execute("DROP VIEW IF EXISTS data_config_sorted CASCADE") # 检查表和列是否存在再进行操作 op.execute(""" DO $$ BEGIN IF EXISTS (SELECT FROM information_schema.columns WHERE table_name = 'data_config' AND column_name = 'llm_id') THEN ALTER TABLE data_config ALTER COLUMN llm_id SET DATA TYPE VARCHAR; COMMENT ON COLUMN data_config.llm_id IS 'LLM模型配置ID'; END IF; IF EXISTS (SELECT FROM information_schema.columns WHERE table_name = 'data_config' AND column_name = 'llm') THEN ALTER TABLE data_config DROP COLUMN llm; END IF; END $$; """) # ### end Alembic commands ### def downgrade() -> None: # ### commands auto generated by Alembic - please adjust! ### op.add_column('data_config', sa.Column('llm', sa.VARCHAR(), autoincrement=False, nullable=True, comment='LLM模型配置ID')) op.alter_column('data_config', 'llm_id', existing_type=sa.VARCHAR(), comment='临时', existing_comment='LLM模型配置ID', existing_nullable=True) # ### end Alembic commands ###