我知道如何使用以下代码中的INDEX。我也知道如何使用外键和主键。
CREATE TABLE tasks (
task_id int unsigned NOT NULL AUTO_INCREMENT,
parent_id int unsigned NOT NULL DEFAULT 0,
task varchar(100) NOT NULL,
date_added timestamp NOT NULL,
date_completed timestamp NULL,
PRIMARY KEY ( task_id ),
INDEX parent ( parent_id )
)
然而我发现以下代码使用了KEY
而不是INDEX
。
CREATE TABLE orders (
order_id int unsigned NOT NULL AUTO_INCREMENT,
-- etc
KEY order_date ( order_date )
)
我在官方MySQL页面上找不到任何解释。有人能告诉我KEY
和INDEX
之间的区别吗?
我唯一看到的区别是当我使用KEY ...
时,我需要重复单词,例如KEY order_date ( order_date )
。
KEY keyname (column_name)
,而我创建表时使用的是INDEX keyname (column_name)
。这是因为它们是同义词,这一事实解释得非常完美。 - crmpiccoPRIMARY KEY
在列定义中也可以仅指定为KEY
。这是什么意思? - ZylPRIMARY KEY
在列定义中也可以仅指定为KEY
。请问如何实现? - Naeem Ul Wahhab