Differences between INDEX, PRIMARY, UNIQUE, FULLTEXT in MySQL?
487down vote
|
Differences
Similarities
|
|||
All of these are kinds of indices. primary: must be unique, is an index, is (likely) the physical index, can be only one per table. unique: as it says. You can't have more than one row with a tuple of this value. Note that since a unique key can be over more than one column, this doesn't necessarily mean that each individual column in the index is unique, but that each combination of values across these columns is unique. index: if it's not primary or unique, it doesn't constrain values inserted into the table, but it does allow them to be looked up more efficiently. fulltext: a more specialized form of indexing that allows full text search. Think of it as (essentially) creating an "index" for each "word" in the specified column. |
|||||
|
I feel like this has been well covered, maybe except for the following:
http://stackoverflow.com/questions/707874/differences-between-index-primary-unique-fulltext-in-mysql |
NOT NULL
. MySQL will report inshow columns
that a non-NULL unique key is a primary key, if there are no other primary keys defined. – Gordon Linoff Sep 6 '14 at 20:44