```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful

feat(database): 添加多个玩家相关表的联合唯一约束

- 为player_talk表添加玩家+挖矿联合唯一索引
- 为player_task表添加玩家+任务联合唯一索引
- 为player_title表添加玩家+称号联合唯一索引
- 为player_pet表添加玩家+精灵联合唯一索引
- 为player_cdk_log表添加玩家+CDK联合唯一索引
- 为player_egg表添加玩家孵蛋联合唯一索引
- 为player_pvp表添加PVP索引
- 为player_sign_in_log表添加签到联合唯一索引
- 为player_room_house表添加房间索引

fix(user-talk): 修复获取聊天配置
This commit is contained in:
昔念
2026-03-28 02:22:15 +08:00
parent 06091ff42c
commit d55c96e383
4 changed files with 57 additions and 18 deletions

View File

@@ -1,4 +1,42 @@
-- 玩家+物品+VIP状态 联合唯一
ALTER TABLE player_item
ADD CONSTRAINT uk_player_item_player_item_vip
UNIQUE (player_id, item_id, is_vip);
UNIQUE (player_id, item_id, is_vip);
-- 玩家+挖矿 联合唯一
CREATE UNIQUE INDEX uk_talk_player ON player_talk (talk_id, player_id);
-- 玩家+任务 联合唯一
CREATE UNIQUE INDEX uk_player_task ON player_task (player_id, task_id);
-- 玩家+称号 联合唯一
CREATE UNIQUE INDEX uk_player_title ON player_title (player_id, is_vip) WHERE deleted_at IS NULL;
-- 玩家+精灵 联合唯一
CREATE UNIQUE INDEX uk_player_pet ON player_pet (player_id, is_vip, catch_time) WHERE deleted_at IS NULL;
-- 玩家+CDK 联合唯一
CREATE UNIQUE INDEX uk_player_cdk_log
ON player_cdk_log (player_id, code_id, is_vip)
WHERE deleted_at IS NULL;
-- 玩家孵蛋 联合唯一
CREATE UNIQUE INDEX uk_player_egg
ON player_egg (player_id, is_vip)
WHERE deleted_at IS NULL;
---PVP索引
CREATE UNIQUE INDEX uk_player_pvp
ON player_pvp (player_id, season)
WHERE deleted_at IS NULL;
--签到
CREATE UNIQUE INDEX uk_player_sign_in_log
ON player_sign_in_log (player_id, sign_in_id, is_vip)
WHERE deleted_at IS NULL;
--房间索引
CREATE UNIQUE INDEX uk_player_room_house
ON player_room_house (player_id, is_vip)
WHERE deleted_at IS NULL;