Почему в инструкции CREATE TABLE «KEY» используется таким образом? KEY `IDX_ATTRIBUTE_LABEL_ATTRIBUTE` (` attribute_id`) - PullRequest
0 голосов
/ 13 апреля 2011

Я пытаюсь понять эту структуру таблицы.Я никогда не видел такого утверждения, это какой-то внешний ключ ?

нет такой таблицы, как * IDX_ATTRIBUTE_LABEL_ATTRIBUTE *

CREATE TABLE IF NOT EXISTS `eav_attribute_label (
  `attribute_label_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `attribute_id` smallint(5) unsigned NOT NULL DEFAULT '0',
  `store_id` smallint(5) unsigned NOT NULL DEFAULT '0',
  `value` varchar(255) NOT NULL DEFAULT '',
  PRIMARY KEY (`attribute_label_id`),
  KEY `IDX_ATTRIBUTE_LABEL_ATTRIBUTE` (`attribute_id`),
  KEY `IDX_ATTRIBUTE_LABEL_STORE` (`store_id`),
  KEY `IDX_ATTRIBUTE_LABEL_ATTRIBUTE_STORE` (`attribute_id`,`store_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

спасибо

1 Ответ

1 голос
/ 13 апреля 2011

В этом случае KEY является синонимом INDEX, а не внешним ключом.

Примечание. Индекс для attribute_id является избыточным, поскольку существует составной индекс (attribute_id, store_id).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...