mysql表中唯一的2列

时间:2014-01-02 13:08:47

标签: mysql sql indexing alter-table unique-index

是否可以在mysql db中创建2列唯一? 例如:

ID | columnA | columnB
 1 | Dan     | 1
 2 | Dan     | 2
 3 | Zak     | 1
 4 | Dan     | 1 (WHEN TRYING TO INSERT ROW 4 - NOT ALLOWED! DUPLICATE COULMNA + COLUMNB)

2 个答案:

答案 0 :(得分:6)

试试这个:

ALTER TABLE tableA ADD UNIQUE INDEX idxColAB (columnA, columnB)

答案 1 :(得分:0)

唯一索引保证索引键不包含重复值,因此表中的每一行都以某种方式唯一。创建UNIQUE约束和创建独立于约束的唯一索引之间没有显着差异。数据验证以相同的方式进行,并且查询优化器不区分由约束创建的唯一索引或手动创建的唯一索引。但是,在列上创建UNIQUE约束会使索引的目标明确

link