SQL强制一列对于共享相同外键的每一行都是唯一的

时间:2013-01-24 14:32:25

标签: mysql sql foreign-keys unique-constraint

只是想知道这是否可以由数据库执行......

我有一个具有外键的表,另一列需要在外键相同的行中是唯一的。只要外键不同,就允许重复的条目。

有办法做到这一点吗?我似乎无法找到一种方法来设置基于某些条件的唯一约束,而不是应用于整个表。

2 个答案:

答案 0 :(得分:1)

您可以在MySQL中的两列添加唯一约束:

alter table add unique index table(fk, othercolumn)

答案 1 :(得分:1)

您也可以在两个列上创建UNIQUE约束。

ALTER TABLE myTableName 
      ADD CONSTRAINT tb_UQ UNIQUE (FKColumn, OtherColumn)

更新1