Mysql SQL强制共享同一外键的每行有一列是唯一的

Mysql SQL强制共享同一外键的每行有一列是唯一的,mysql,sql,foreign-keys,unique-constraint,Mysql,Sql,Foreign Keys,Unique Constraint,只是想知道这是否可以由数据库强制执行 我有一个表有一个外键,另一个列需要在外键相同的行中是唯一的。只要外键不同,就允许重复条目 有办法做到这一点吗?我似乎无法找到一种方法来设置基于某些条件而不是应用于整个表的唯一约束。您可以在MySQL中的两列上添加唯一约束: alter table add unique index table(fk, othercolumn) 您也可以在两个列上创建UNIQUE约束 ALTER TABLE myTableName ADD CONSTRAINT

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

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


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

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

alter table add unique index table(fk, othercolumn)

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

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