我具有属性A和因此与甲一个表:数据库设计 - 已标记字段
ID Name OtherFields isPrimary
1 foo stuff 1
2 bar stuff 0
3 blah stuff 0
4 blahh stuff 0
的值isPrimary列标记行作为主。只有一行可以是主要行,并且必须始终有一行作为主要行
在数据库级执行此操作的最佳方法是什么?
最好的方法是创建一个名为Primary的表,它具有一列,ID将是引用A.ID的外键。或者,使用上面概述的表结构,我知道我们可以强制使用唯一索引将不超过一行设置为1,但是我不确定如何强制执行,必须有不少于一行的集合如1
我使用MS SQL Server的
在我看来,第一种解决方案(表格Primary)对于简单性和执行效率以及编程简单性都更好。 – Renzo