当前位置:   article > 正文

数据库的基本操作(3)——建立索引_数据库建索引

数据库建索引

原表格如下图:在这里插入图片描述
(1)为字段sname建立索引
格式:

CREATE INDEX [索引名] on [表格名] (字段名);
  • 1

例:
在这里插入图片描述
索引已创立,名称为index
(2)查看索引
格式:

show index from [表格名] from [数据库名]
  • 1

其中 from [数据库名]可省略
例:
在这里插入图片描述
解释:
1.Non_unique 表示该索引是否是唯一索引。若不是唯一索引,则该列的值为 1;若是唯一索引,则该列的值为 0。
2.Key_name 表示索引的名称(myindex)。
3.Seq_in_index 表示该列在索引中的位置,如果索引是单列的,则该列的值为1;如果索引是组合索引,则该列的值为每列在索引定义中的顺序。
4.Column_name 表示定义索引的列字段(sname)。
5.Collation 表示列以何种顺序存储在索引中。在 MySQL 中,升序显示值“A”(升序),若显示为 NULL,则表示无分类。
6.Cardinality 索引中唯一值数目的估计值。
7.Sub_part 表示列中被编入索引的字符的数量。若列只是部分被编入索引,则该列的值为被编入索引的字符的数目;若该列的值为NULL,则说明整列被编入索引。
8.Packed 指示关键字如何被压缩。 NULL说明没有被压缩。
9.Null 用于显示索引列中是否包含 NULL。若列含有 NULL,该列的值为 YES。若没有,则该列的值为 NO。
10.Index_type 显示索引使用的类型和方法。
11.Comment 显示评注。

表中显示有两行,查询表的内容(如下图)知:该表格中将字段sno、sname设置为主键。由于主键为唯一索引,所以不能再为主键字段建立索引。(关于主键与唯一索引之间的关系,以后会再详细整理。)
在这里插入图片描述
(3)索引的重命名
格式:

ALTER table [表名] RENAME INDEX [原索引名] TO [新索引名];
  • 1

例,将(1)中建立的索引重命名为myindex2:
在这里插入图片描述
另外,该方法只对Mysql5.7及以上版本适用,5.7以下版本为索引重命名的方法是:删除旧索引,建立新索引。
(4)删除索引
格式:

DROP INDEX [要删除的索引名] on student;
  • 1

在这里插入图片描述

(5)按某一字段的升序或降序建立唯一索引
格式:

CREATE UNIQUE INDEX [索引名] ON [表名]([字段名] ASC|DESC);
  • 1

ASC表升序,DESC表降序。如果省略,默认升序。

例1:为student 表按姓名升序建立唯一索引(取名为StuSname)
在这里插入图片描述
例二:为Student_course 表按学号升序和课程号降序建立唯一索引(取名为SCSnoTcid)
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/572155
推荐阅读
相关标签
  

闽ICP备14008679号