-- ============================================================ -- 同步 users 表与 Go Model(仅 VIP 身份/状态字段,不含单独 VIP 资料列) -- 小程序已改为直接读用户资料(nickname/avatar/projectIntro/phone),不再单独存 vip_name/vip_avatar 等。 -- 若某条 ALTER 报 Duplicate column name,说明该列已存在,跳过即可。 -- 也可直接重启 soul-api(未设 SKIP_AUTO_MIGRATE 时会自动补列)。 -- ============================================================ -- users 表:VIP 身份与状态(与 internal/model/user.go 一致) ALTER TABLE users ADD COLUMN is_vip TINYINT(1) NULL DEFAULT 0 COMMENT '是否 VIP'; ALTER TABLE users ADD COLUMN vip_expire_date DATETIME(3) NULL DEFAULT NULL COMMENT 'VIP 到期时间'; ALTER TABLE users ADD COLUMN vip_activated_at DATETIME(3) NULL DEFAULT NULL COMMENT '成为 VIP 时间,排序用'; ALTER TABLE users ADD COLUMN vip_sort INT NULL DEFAULT NULL COMMENT '手动排序,越小越前'; ALTER TABLE users ADD COLUMN vip_role VARCHAR(50) NULL DEFAULT NULL COMMENT '角色:从 vip_roles 选或手动填写'; -- chapters 表:Model 使用 hot_score(热度分),SQL 导出里只有 hot_score_override,缺则排名等接口报错 ALTER TABLE chapters ADD COLUMN hot_score INT NOT NULL DEFAULT 0 COMMENT '热度分,用于排名算法';