This question already has answers here:
How do I specify unique constraint for multiple columns in MySQL?
(14 个回答)
3年前关闭。
我知道我可以制作两列唯一键,但这并不是我想要的。
我希望例如如果
虽然这是不可能的:
在
(14 个回答)
3年前关闭。
我知道我可以制作两列唯一键,但这并不是我想要的。
我希望例如如果
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`);
关于MySQL 两列唯一键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47942621/
10-11 18:19