在MySQL中,是否有可能一起创建两个唯一索引?
例如,有一个表格包含两个ID - 客户ID和产品ID 。 我想为对创建唯一性。 简而言之,用户和产品的组合只能出现一次。 可以根据需要存在与其他产品相同的用户。 并且可以根据需要提供与其他用户相同的产品。 但这对本身是独一无二的。怎么样?
此查询实际上具有OR关系。我正在寻找AND关系。
ALTER TABLE top ADD CONSTRAINT unique_pair UNIQUE (uid, pid)
答案 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);
这两个都创建了一个唯一索引,然后用于强制执行约束。