-- 别名表增加唯一约束,防止同一个人名下同名别名重复 CREATE UNIQUE INDEX IF NOT EXISTS idx_aliases_unique ON person_aliases(person_id, alias_name); -- 清理可能存在的重复别名(保留 id 最小的那条) DELETE FROM person_aliases WHERE id NOT IN ( SELECT MIN(id) FROM person_aliases GROUP BY person_id, alias_name ); -- 相册关联表上增加唯一索引(已有 PRIMARY KEY,添加显式唯一索引加速) -- 同时增加每张专辑只能有一个 person 的约束 -- 先清理旧的重复关联(同一album_id关联了多个person_id的情况) DELETE FROM person_albums WHERE rowid NOT IN ( SELECT MIN(rowid) FROM person_albums GROUP BY album_id, person_id );