от неизвестной причины:Столбец InnoDB с пометкой «using btree» почему?
CREATE TABLE `orders_products` (
`ORDER_ID` int(10) unsigned NOT NULL,
`PRODUCT_ID` int(10) unsigned NOT NULL,
`QUANTITY` tinyint(3) unsigned NOT NULL,
`USER_ID` int(10) unsigned NOT NULL,
PRIMARY KEY (`ORDER_ID`,`PRODUCT_ID`,`USER_ID`) USING BTREE,
KEY `FK_orders_products_3` (`USER_ID`),
KEY `FK_orders_products_2` (`PRODUCT_ID`) USING BTREE,
CONSTRAINT `FK_orders_products_1` FOREIGN KEY (`ORDER_ID`) REFERENCES `orders` (`ID`) ON DELETE CASCADE,
CONSTRAINT `FK_orders_products_2` FOREIGN KEY (`PRODUCT_ID`) REFERENCES `products` (`ID`) ON DELETE CASCADE,
CONSTRAINT `FK_orders_products_3` FOREIGN KEY (`USER_ID`) REFERENCES `users` (`ID`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
первичного ключ и FK_orders_products_2 получили ВТКЕЙ. Как это знать? Ни SHOW INDEX, ни ОПИСАТЬ TABLE описывает, кто с помощью ВТКЕЕ и кто не делает
Все индексы InnoDB являются btrees, поэтому их маркировка особенно странно. http://dev.mysql.com/doc/refman/5.5/en/innodb-physical-structure.html – 2013-02-14 22:35:08