MySQL双列唯一键[重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL双列唯一键[重复]相关的知识,希望对你有一定的参考价值。

这个问题在这里已有答案:

我知道我可以制作两列唯一键,但这并不是我想要的。

我希望那例如,如果col1='1', col2='2'那么col1='1', col2='2'不能有另一行,但完全有可能做到以下几点:

+--------+--------+
|  col1  |  col2  |
+--------+--------+
|    1   |    1   |
|    1   |    2   |
|    2   |    1   |
|    2   |    2   |
+--------+--------+

虽然这是不可能的:

+--------+--------+
|  col1  |  col2  |
+--------+--------+
|    1   |    1   |
|    1   |    1   |
+--------+--------+

制作两个唯一键不是一个选项,因为在col1='1', col2='1'col1='1', col2='2' col1是相同的,如果两者都是唯一键则不允许。

答案

你需要composite unique index

ALTER TABLE tablename ADD UNIQUE KEY `uidx` (`col1`, `col2`);
另一答案

您只需要在两列col1col2之间声明一个唯一索引:

CREATE TABLE Table1
(
  `col1` int, 
  `col2` int,
   UNIQUE `unique_index`(`col1`, `col2`)
);

如果您尝试将1, 1插入col1和col2,您将收到以下错误:

Duplicate entry '1-1' for key 'unique_index'

你可以自己尝试qazxsw poi。

以上是关于MySQL双列唯一键[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Map集合概述和特点

集合(双列)

集合------双列集合

Map集合

#导入Word文档图片#值得收藏:当向数据库导入大量数据时,mysql主键唯一键重复插入,如何丝滑操作并不导入重复数据呢

MySQL两列唯一键[重复]