MySQL学习--MySQL创建索引的若干总结

 时间:2024-10-13 09:08:12

1、首先我们先看一下MySQL如何帮助我们自动创建索引,使用下述SQL语句创建一个表(注意这个语句中声明了主键列):create table test_index ( id int not null auto_increment, name varchar(100), primary key (id)) engine = innodb charset = utf8;我们通过 primary key 指定了该表的主键,MySQL 也会基于该主键自动为我们创建聚簇索引!表创建完毕后,可以通过 show index from 表名称 查看该表关联的所有索引信息。

MySQL学习--MySQL创建索引的若干总结

3、继续,我们这次建表时,依然不指定主键,但我们指定一个 unique 列 (唯一约众龊受礻束):create table test_ind髫潋啜缅ex2 (id int not null,name varchar(100),unique (name)) engine = innodb charset = utf8;从运行结果上看,MySQL还是会基于具有唯一约束的列 name 为我们创建索引(其本质也是为了当我们插入数据时,能最快判断是否有唯一性冲突),因为该列不是非空列,因此不能被选定为主键列,因此该索引是一个辅助索引而不是聚簇索引!

MySQL学习--MySQL创建索引的若干总结

5、总结:MySQL首先会为选定的主键列自动创建聚簇索引,对于具有唯一约束的列,也会自动为其创建辅助索引。

  • 如何动态创建QTableWidget
  • 怎么检测tomcat6启动失败的原因
  • Eclipse 安装背景主题 Color Theme
  • Idea中配置多个war同一个tomcat端口
  • 如何通过linux代理配置本机连接局域网服务器
  • 热门搜索
    拉直头发后怎么保养 手机垃圾怎么清理 韩束怎么样 深蹲怎么做 头发出油厉害怎么办 便血怎么回事 查找我的iphone怎么用 淘宝怎么举报 怎么保养头发 新生儿肺炎怎么办