一个标有“使用btree”的InnoDB列为什么?

时间:2013-02-14 22:25:27

标签: mysql

原因不明:

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获得了BTREE。怎么知道呢? SHOW INDEX和DESCRIBE TABLE都没有描述谁使用BTREE以及谁不使用

1 个答案:

答案 0 :(得分:0)

您可以使用

获取有关密钥的信息
 SHOW KEYS FROM orders_products

该结果集中有一个INDEX_TYPE列。