2012-10-10 45 views
1

如何才能使数据库上的约束,因此只有一个实体在期望的位置适合?唯一的实体

例如,我们想为国家数据库的总统。 我们如何定义“是总裁”的属性,使得只有一个条目可以有“真”值。

+0

它最终会落在你的逻辑,你的DBMS是否抱怨由于约束的问题或没有。相反,您应该在代码中更新/添加记录之前检查此内容(如果您使用代码执行此操作)。 – Jeremy

+0

谢谢杰里米。我其实想在MS Access中使用它。所以,你说没有编码就没有具体的方法去做。 –

+0

不适用于单个字段。 – Jeremy

回答

5

在将数据插入到表时,你可以做到这一点。如果你想添加一个总统,首先检查是否有总统。

1

你最好以不同的方式模拟这种 - 例如具有Countries表,People表,然后其中有一个外键CountriesPresidents表和外键People表。

然后你可以在两个外键的组合值添加唯一约束,以确保每个国家存在Presidents表内的只有1人。

+0

感谢“devdigital”!我其实想知道是否有任何简单和轻量级的解决方案。事实上,为这种情况添加一张表对我来说似乎并不是最理想的。 –