| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- -- 迁移文件: 005_modify_models_columns.sql
- -- 描述: 修改models表字段:重命名type为category,添加supplier和price字段
- -- ============================================
- -- 正向迁移: 修改字段
- -- ============================================
- -- 1. 重命名 type 字段为 category
- ALTER TABLE aigcspace.models RENAME COLUMN type TO category;
- -- 更新字段注释
- COMMENT ON COLUMN aigcspace.models.category IS '模型分类: 0=语言模型, 1=多模态模型, 2=TTS模型, 3=STT模型, 4=生图模型, 5=生视频模型';
- -- 2. 添加 supplier 字段,默认值 'Qwen'
- ALTER TABLE aigcspace.models ADD COLUMN IF NOT EXISTS supplier VARCHAR(100) DEFAULT 'Qwen' NOT NULL;
- -- 添加字段注释
- COMMENT ON COLUMN aigcspace.models.supplier IS '供应商名称,默认Qwen';
- -- 3. 添加 price_id 字段,关联 model_price 表
- ALTER TABLE aigcspace.models ADD COLUMN IF NOT EXISTS price_id INTEGER;
- -- 添加字段注释
- COMMENT ON COLUMN aigcspace.models.price_id IS '价格ID,关联model_price表';
- -- 4. 添加外键约束
- ALTER TABLE aigcspace.models ADD CONSTRAINT fk_models_price_id
- FOREIGN KEY (price_id) REFERENCES aigcspace.model_price(id) ON DELETE SET NULL;
- -- 5. 创建索引优化查询
- CREATE INDEX IF NOT EXISTS idx_models_supplier ON aigcspace.models(supplier);
- CREATE INDEX IF NOT EXISTS idx_models_category ON aigcspace.models(category);
- -- ============================================
- -- 回滚迁移: 恢复修改
- -- ============================================
- -- DROP INDEX IF EXISTS aigcspace.idx_models_supplier;
- -- DROP INDEX IF EXISTS aigcspace.idx_models_category;
- -- ALTER TABLE aigcspace.models DROP CONSTRAINT IF EXISTS fk_models_price_id;
- -- ALTER TABLE aigcspace.models DROP COLUMN IF EXISTS price_id;
- -- ALTER TABLE aigcspace.models DROP COLUMN IF EXISTS supplier;
- -- ALTER TABLE aigcspace.models RENAME COLUMN category TO type;
|