// 功能描述:仅新增电商收藏关系表与中文注释;版本:1.0.0。 package main // migrateEcFavorite 使用既有环境数据库配置,不执行其他表迁移或初始化数据。 func migrateEcFavorite() error { return migrateClientColumns([]string{ `CREATE TABLE IF NOT EXISTS ec_favorite ( id bigserial PRIMARY KEY, identity varchar(36) NOT NULL UNIQUE, created_at timestamptz NOT NULL, updated_at timestamptz NOT NULL, deleted_at timestamptz, status integer NOT NULL DEFAULT 1 CHECK (status IN (1, 3)), user_account_id bigint NOT NULL REFERENCES user_account(id), ec_product_id bigint NOT NULL REFERENCES ec_product(id), revision bigint NOT NULL DEFAULT 1 CHECK (revision > 0), CONSTRAINT ux_ec_favorite_owner_product UNIQUE (user_account_id, ec_product_id) )`, `COMMENT ON TABLE ec_favorite IS '电商商品收藏关系;每账户每商品唯一,取消后归档,下架商品保留'`, `COMMENT ON COLUMN ec_favorite.id IS '收藏关系内部自增主键,不向客户端暴露'`, `COMMENT ON COLUMN ec_favorite.identity IS '收藏关系公开UUID V7标识'`, `COMMENT ON COLUMN ec_favorite.created_at IS '首次建立收藏关系的服务端时间'`, `COMMENT ON COLUMN ec_favorite.updated_at IS '最近一次收藏状态变化的服务端时间'`, `COMMENT ON COLUMN ec_favorite.deleted_at IS '软删除时间;用户取消收藏不写此字段而使用归档状态'`, `COMMENT ON COLUMN ec_favorite.status IS '收藏状态:1=已收藏,3=已取消并归档'`, `COMMENT ON COLUMN ec_favorite.user_account_id IS '收藏者账户内部关联键,对应user_account.id'`, `COMMENT ON COLUMN ec_favorite.ec_product_id IS '收藏商品内部关联键,对应ec_product.id;商品下架不删除关系'`, `COMMENT ON COLUMN ec_favorite.revision IS '正整数并发版本,首次为1,每次收藏状态变化递增,相同目标重试不递增'`, }) }