Is there any different how mysql treats
UNIQUE (column1, column2),
INDEX (column1)
and
UNIQUE INDEX (column1, column2)
and
UNIQUE (column1, column2)
In the latter, I think mysql will automatically creates index for UNIQUE
to avoid duplicate records. Am I right?
Best Answer
UNIQUE (column1, column2)
impliesUNIQUE INDEX (column1, column2)
because theINDEX
keyword is optional. So an index is created.However, the MySQL 5.5 docs show that theINDEX
(orKEY
) keyword is mandatory soUNIQUE (column1, column2)
should give an errorINDEX (column1, column2)
does not meanUNIQUE INDEX (column1, column2)
: it means an index that does allow duplicate(column1, column2)
pairs