搜索
您的当前位置:首页正文

数据库怎么建立索引

2020-11-09 来源:好走旅游网

  索引用于快速找出在某个列中有一特定值的行,不使用索引,MySQL必须从第一条记录开始读完整个表,直到找出相关的行,表越大,查询数据所花费的时间就越多。建立索引的操作步骤如下:

推荐教程:MySQL入门视频教程

1、首先我们打开一个要操作的数据表,如下图所示,我们需要给name字段添加索引。

mysql11.png

2、接下来我们就可以通过create index来添加索引了,如下图所示,on后面的内容别丢掉了。

mysql12.png

3、然后我们展开表下面的索引文件夹,就可以看到创建的索引了。

mysql13.png

4、接下来我们在创建索引的时候还可以在字段后面添加排序方式。

mysql14.png

5、然后删除索引的时候用的是drop语句,如下图所示,和删除表类似。

mysql15.png

6、最后执行drop语句以后,在索引文件夹下面就没有了索引。

mysql16.png

扩展资料

  索引是为了加速对表中数据行的检索而创建的一种分散的存储结构。索引是针对表而建立的,它是由数据页面以外的索引页面组成的,每个索引页面中的行都会含有逻辑指针,以便加速检索物理数据。 [2]

  在数据库关系图中,可以在选定表的“索引/键”属性页中创建、编辑或删除每个索引类型。当保存索引所附加到的表,或保存该表所在的关系图时,索引将保存在数据库中。

  在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。

  索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序。数据库使用索引以找到特定值,然后顺指针找到包含该值的行。这样可以使对应于表的SQL语句执行得更快,可快速访问数据库表中的特定信息。

  当表中有大量记录时,若要对表进行查询,第一种搜索信息方式是全表搜索,是将所有记录一一取出,和查询条件进行一一对比,然后返回满足条件的记录,这样做会消耗大量数据库系统时间,并造成大量磁盘I/O操作;第二种就是在表中建立索引,然后在索引中找到符合查询条件的索引值,最后通过保存在索引中的ROWID(相当于页码)快速找到表中对应的记录。

优点

  1.大大加快数据的检索速度;

  2.创建唯一性索引,保证数据库表中每一行数据的唯一性;

  3.加速表和表之间的连接;

  4.在使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间。

缺点

  1.索引需要占物理空间。

  2.当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,降低了数据的维护速度。

Top