使用成对唯一性创建两列

时间:2016-02-21 13:59:31

标签: mysql unique-constraint unique-key

在MySQL中,是否有可能一起创建两个唯一索引

例如,有一个表格包含两个ID - 客户ID和产品ID 。 我想为创建唯一性。 简而言之,用户和产品的组合只能出现一次。 可以根据需要存在与其他产品相同的用户。 并且可以根据需要提供与其他用户相同的产品。 但这对本身是独一无二的。怎么样?

此查询实际上具有OR关系。我正在寻找AND关系。

ALTER TABLE top ADD CONSTRAINT unique_pair UNIQUE (uid, pid)

1 个答案:

答案 0 :(得分:1)

这就是你所描述的:

ALTER TABLE top ADD CONSTRAINT unq_top_unique_pair UNIQUE (uid, pid);

同样如此:

CREATE UNIQUE INDEX unq_top_uid_pid ON TOP(uid, pid);

这两个都创建了一个唯一索引,然后用于强制执行约束。