mysql innodb存储引擎的聚集索引
InnoDB聚集索引
MySQL有没有支持聚集索引,取决于采用哪种存储引擎。
MySQL InnoDB一定会建立聚集索引,所谓聚集,指实际数据行和相关的键值保存在一块,这也决定了一个表只能有一个聚集索引,即MySQL不会一次把数据行保存在二个地方。InnoDB通常根据主键值(primary key)进行聚集,但是当一个表没有PK怎么办?InnoDB选取聚集索引参照列的顺序是:
1.如果声明了主键(primary
key),则这个列会被做为聚集索引
2.如果没有声明主键,则会用一个唯一且不为空的索引列做为主键,成为此表的聚集索引
3.上面二个条件都不满足,InnoDB会自己产生一个虚拟的聚集索引。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。