Ответ 1
Цитата из http://dev.mysql.com/doc/refman/5.1/en/create-table.html
{INDEX|KEY}
Итак, KEY
- это INDEX
;)
В этом определении таблицы MySQL:
CREATE TABLE groups (
ug_main_grp_id smallint NOT NULL default '0',
ug_uid smallint default NULL,
ug_grp_id smallint default NULL,
KEY (ug_main_grp_id)
);
Что означает ключевое слово KEY
? Это не первичный ключ, это не внешний ключ, так что это просто индекс? Если так, что особенного в этом типе индекса, созданного с помощью KEY
?
Цитата из http://dev.mysql.com/doc/refman/5.1/en/create-table.html
{INDEX|KEY}
Итак, KEY
- это INDEX
;)
KEY
обычно является синонимом INDEX
. Атрибут ключа PRIMARY KEY
также может быть задан как просто KEY
, если он задан в определении столбца. Это было реализовано для совместимости с другими системами баз данных.
column_definition:
data_type [NOT NULL | NULL] [DEFAULT default_value]
[AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY]
...
Ref: http://dev.mysql.com/doc/refman/5.1/en/create-table.html