小编pea*_*ear的帖子

使两列双向唯一

我正在创建一个存储足球比赛的数据库。

每轮,任何特定的足球俱乐部只能踢一场比赛(主场或客场)。

例如,插入后

INSERT INTO Match (Round, Home, Away) VALUES (1, Barcelona, Real);

插入例如

INSERT INTO Match (Round, Home, Away) VALUES (1, Bayern, Barcelona);

INSERT INTO Match (Round, Home, Away) VALUES (1, Barcelona, Bayern);

必须被禁止,因为巴塞罗那已经在第一轮与皇马打了一场比赛。他们不应该能够在同一轮对阵拜仁(无论是主场还是客场)。

如何确保不会发生此类插入?

我使用触发器吗?某种唯一的索引组合?我两种都尝试过,但都迷路了,实际上并没有得到预期的结果。

谢谢

postgresql trigger index database-design constraint

6
推荐指数
1
解决办法
562
查看次数

标签 统计

constraint ×1

database-design ×1

index ×1

postgresql ×1

trigger ×1