MySQL的一张表使用InnoDB引擎,创建时如果忘记给这张表添加主键,请问这边表有没有聚簇索引?如果有的话聚簇索引是什么样的?
2026/4/22 5:18:55
网站建设
项目流程
聚簇索引创建的原则:
- 主键存在:如果表中定义了主键,主键即为聚簇索引。
- 没有主键时:如果没有定义主键,InnoDB 会选择第一个唯一且非空的索引作为聚簇索引。
- 既没有主键也没有唯一索引时:如果既没有主键也没有合适的唯一索引,InnoDB 会自动创建一个隐藏的6字节的行 ID (ROWID) 用作聚簇索引。这个是内部管理的,对用户不可见。