0

当我使用 MySQL Workbench 创建具有单个主键的简单表时,它不仅创建了 PK 索引(很酷),而且还创建了第二个唯一索引(?)。这是一个示例输出:

CREATE  TABLE  `tbl_example` (
  `tbl_example_ID` INT(10) UNSIGNED NOT NULL ,
  `field1` VARCHAR(45) NULL ,
  `field2` VARCHAR(45) NULL ,
  PRIMARY KEY (`tbl_example_ID`) ,
  UNIQUE INDEX `tbl_example_ID_UNIQUE` (`tbl_example_ID` ASC) )
ENGINE = MyISAM

我的理解是 PK 假定唯一索引,因此该UNIQUE INDEX行是不必要的,对吗?只是在我更新一堆表之前寻找一些确认。

4

1 回答 1

2

你说的对。主键(对于 MySQL)是一个名为“PRIMARY KEY”的唯一索引。因此,在同一列上拥有主键和唯一索引是对资源的毫无意义的浪费。

于 2011-07-14T22:19:18.120 回答