这有点令人费解。
我有一个唯一的非聚集索引,我希望将其转换为该表的聚簇索引。
我无法删除并重新创建索引,因为删除AI列上的索引是非法的。
这是当前的DDL
CREATE TABLE `RETS_STAGE1_QUEUE` (
`LN_LIST_NUMBER` int(8) unsigned zerofill NOT NULL,
`RECORDMODDATE` datetime NOT NULL,
`syncTime` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`xmlText` varchar(64000) NOT NULL,
`RETS_STAGE1_QUEUE_ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
UNIQUE KEY `RETS_STAGE1_QUEUE_ID` (`RETS_STAGE1_QUEUE_ID`)
) ENGINE=InnoDB AUTO_INCREMENT=838053 DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED
答案 0 :(得分:1)
AUTO_INCREMENT
列已被用作聚集索引。
来自docs:
如果没有为表定义PRIMARY KEY,MySQL会找到第一个UNIQUE索引,其中所有键列都是NOT NULL,而InnoDB将它用作聚簇索引。