具有 [0,2] 行但不多于相似数据的实现

Implementation of having [0,2] rows, but not more, with similar data

我正在使用 MS Access 2016 实现一个访问数据库。我正在尝试创建一个 table,其中包含一些列,其中 2 个是组合外键。

现在,我希望外键的每个值在新 table 中最多可用 2 次。如果用户第三次尝试使用相同的值,则程序应给出错误。

我在其他地方找不到这个问题的答案。

Original table: Field1  Field2
                  1        2
                  2        2
New table: Field1(FK) Field2(FK)PK Field3 PK
              1         2            3
              1         2            4
              1         2            5      <---- Generate error

FK - 外键

PK - 主键

EDIT1: 我想澄清一下我想要 Field1Field2新 Table 具有所需的功能。

EDIT2: 举例说明我的问题,我有一场篮球比赛(Field1:StartingTime Field2:Stadium)。对于这场比赛,我需要 2 支球队。因此我有一个 table GameTeams。但是不能有超过 2 个团队,因此我需要这个限制为 2。换句话说,每个游戏有 2 个游戏团队。希望这可以提供更好的理解。

使用 Access 2010 及更高版本,您可以使用保存的查询来实现您的目标,该查询计算与每个 (Field1,Field2) 对关联的行...

...以及 table 上的更改前 data macro 以检查现有的相关行: