是否可以使数据库表中的一行唯一?如果有怎么办?我知道您可以使字段唯一,例如“John”不能在名称字段中出现两次。但是如果我有类似的东西怎么办:
name: John
id: 1
foreign_key: 1
name: John
id: 2
foreign_key: 1
在这种情况下,这会很好,因为它们相同但不同。
在哪里可以防止这种情况:
name: John
id: 1
foreign_key: 1
name: John
id: 1
foreign_key: 1
很难证明,因为显而易见的答案是使 foreign_key 唯一,但在我的情况下,它是多对多关系,因此 ID 或外键可能会出现很多次,但不应该在所有列中都有相同的数据。
即这应该工作:
id: 1
fKey: 2
afKey: 3
id: 1
fKey: 3
afKey: 3
但不是当 fKey 和 afKey 在两行中匹配时,例如:
id: 1
fKey: 2
afKey: 3
id: 1
fKey: 2
afKey: 3