精华内容
下载资源
问答
  • 第一,创建索引和维护索引要耗费时间,这种时间随着数据 量的增加而增加。 第二,索引需要占物理空间,除了数据占数据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。 ...

    缺点:

    第一,创建索引和维护索引要耗费时间,这种时间随着数据 量的增加而增加。

    第二,索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。

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

    什么时候不创建索引:

    第一,对于那些在查询中很少使用或者参考的列不应该创建索引。这是因 为,既然这些列很少使用到,因此有索引或者无索引,并不能提高查询速度。相反,由于增加了索引,反而降低了系统的维护速度和增大了空间需求。

    第二,对于那 些只有很少数据值的列也不应该增加索引。这是因为,由于这些列的取值很少,例如人事表的性别列,在查询的结果中,结果集的数据行占了表中数据行的很大比 例,即需要在表中搜索的数据行的比例很大。增加索引,并不能明显加快检索速度。

    第三,对于那些定义为text, image和bit数据类型的列不应该增加索引。这是因为,这些列的数据量要么相当大,要么取值很少。

    第四,当修改性能远远大于检索性能时,不应该创建索 引。这是因为,修改性能和检索性能是互相矛盾的。当增加索引时,会提高检索性能,但是会降低修改性能。当减少索引时,会提高修改性能,降低检索性能。因 此,当修改性能远远大于检索性能时,不应该创建索引。

    展开全文
  • 数据库使用索引的优点是提高查询效率,缺点是对于时间和资源消耗较大

    我自己总结的如下。

    优点:是提高搜索速度,优化搜索性能。

    • 创建了索引的列搜索速度会大大提升(主要目的)
    • 确定列值的唯一性(作为唯一性约束)
    • 加速表与表直接的连接
    • 方便列的排序(因为索引的创建就已经进行了排序)
    因此,适合使用索引的情况有:经常需要进行搜索的列,作为主键或外键的列,经常需要排序或者进行范围搜索的列。


    缺点:耗费资源
    • 创建索引和维护索引需要耗费大量时间,当数据量很大的时候,耗费的时间是巨大的
    • 保存索引需要占用物理空间,每个索引都需要占用一定物理空间
    • 当对数据进行增删改的时候,索引需要动态进行维护,导致修改的时间大大延长
    因此,不适合使用索引的情况有:很少作为查询条件的列,数值种类很少的列(比如性别,同时也不是唯一值),数据量非常大的列(比如text,image类型),对修改性能要求高于查询性能要求的列。


    展开全文
  • 数据库中索引的优缺点 为什么要创建索引呢?这是因为,创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。第二,可以大大加快数据的检索速度,这也是创建索引的最...

    数据库中索引的优缺点
    为什么要创建索引呢?这是因为,创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。第二,可以大大加快数据的检索速度,这也是创建索引的最主要的原因。第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。第四,在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。第五,通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。

    也许会有人要问:增加索引有如此多的优点,为什么不对表中的每一个列创建一个索引呢?这种想法固然有其合理性,然而也有其片面性。虽然,索引有许多优点,但是,为表中的每一个列都增加索引,是非常不明智的。这是因为,增加索引也有许多不利的一个方面。第一,创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。第二,索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。第三,当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。

    索引是建立在数据库表中的某些列的上面。因此,在创建索引的时候,应该仔细考虑在哪些列上可以创建索引,在哪些列上不能创建索引。一般来说,应该在这些列上创建索引,例如:在经常需要搜索的列上,可以加快搜索的速度;在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构;在经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度;在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的;在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间;在经常使用在WHERE子句中的列上面创建索引,加快条件的判断速度。

    同样,对于有些列不应该创建索引。一般来说,不应该创建索引的的这些列具有下列特点:第一,对于那些在查询中很少使用或者参考的列不应该创建索引。这是因为,既然这些列很少使用到,因此有索引或者无索引,并不能提高查询速度。相反,由于增加了索引,反而降低了系统的维护速度和增大了空间需求。第二,对于那些只有很少数据值的列也不应该增加索引。这是因为,由于这些列的取值很少,例如人事表的性别列,在查询的结果中,结果集的数据行占了表中数据行的很大比例,即需要在表中搜索的数据行的比例很大。增加索引,并不能明显加快检索速度。第三,对于那些定义为text, image和bit数据类型的列不应该增加索引。这是因为,这些列的数据量要么相当大,要么取值很少。第四,当修改性能远远大于检索性能时,不应该创建索引。这是因为,修改性能和检索性能是互相矛盾的。当增加索引时,会提高检索性能,但是会降低修改性能。当减少索引时,会提高修改性能,降低检索性能。因此,当修改性能远远大于检索性能时,不应该创建索引。

    展开全文
  • 数据库索引的优缺点

    千次阅读 2018-10-18 22:03:56
    索引的优缺点 索引的优点: ① 建立索引的列可以保证行的唯一性,生成唯一的rowId ② 建立索引可以有效缩短数据的检索时间 ...② 创建索引和维护索引需要空间成本,每一条索引都要占据数据库的物理存储空间,数据...

    索引的优缺点

    索引的优点:

    ① 建立索引的列可以保证行的唯一性,生成唯一的rowId

    ② 建立索引可以有效缩短数据的检索时间

    ③ 建立索引可以加快表与表之间的连接

    ④ 为用来排序或者是分组的字段添加索引可以加快分组和排序顺序

    索引的缺点:

    ① 创建索引和维护索引需要时间成本,这个成本随着数据量的增加而加大

    ② 创建索引和维护索引需要空间成本,每一条索引都要占据数据库的物理存储空间,数据量越大,占用空间也越大(数据表占据的是数据库的数据空间)

    ③ 会降低表的增删改的效率,因为每次增删改索引需要进行动态维护,导致时间变长

    什么情况下需要建立索引

    • 数据量大的,经常进行查询操作的表要建立索引。

    • 用于排序的字段可以添加索引,用于分组的字段应当视情况看是否需要添加索引。

    • 表与表连接用于多表联合查询的约束条件的字段应当建立索引。

    展开全文
  • SQL数据库索引缺点

    千次阅读 2019-01-07 19:54:22
    索引对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。   优点 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。  可以大大加快数据的检索速度,这也是...
  • 1.索引就像是书的目录,是与或视图关联的磁盘上结构,可以加快从或视图中检索行的速度。索引中包含由或视图中的一列或多列生成的键。这些键存储在一个结构(BTree)中,使SQL可以快速有效地查找与键值关联的行...
  • 数据库建立索引的优缺点

    千次阅读 2019-11-04 00:40:31
    1.通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 2.可以大大加快数据的检索速度,这也是创建索引的最主要的原因。 3.可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别意义。 4....
  • 第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 第二,可以大大加快数据的检索速度,这也是创建索引的最主要的原因。 第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面...
  • 索引的几种类型分别是普通索引、唯一索引、聚集索引、主键索引、全文索引几种。 使用索引的优点: 提高数据的搜索速度 加快之间的连接速度 在信息检索过程中,若使用分组及排序子句进行时,...在创建索引的...
  • 索引就像是书的目录,是与或视图关联的磁盘上结构,可以加快从或视图中检索行的速度。索引中包含由或视图中的一列或多列生成的键。这些键存储在一个结构(BTree)中,使SQL可以快速有效地查找与键值关联的行。...
  • 数据库表添加索引对性能的影响

    千次阅读 2019-03-25 10:56:55
    1.添加索引后查询速度会变快  mysql中索引是存储引擎层面用于快速查询找到记录的一种...在经常需要搜索的列上创建索引,可以加快搜索的速度。如果中数据少的话,没必要用索引,如果中数据很多的话,还是索引...
  •   索引对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。但是查询速度的提高是以插入,更新,删除的速度为代价的,所以索引的作用在于提高一个海量数据的检...
  • 数据库索引是什么 什么优缺点

    千次阅读 2018-11-28 14:48:44
    数据库索引是:数据库索引就像是一本书的目录一样,使用它可以让你在数据库里搜索查询的速度大大提升。而我们使用索引的目的就是,加快中的查找和排序。索引的种类分为普通索引、唯一索引、聚集索引、主键索引、...
  • 数据库索引的优缺点

    千次阅读 2010-05-14 10:07:00
    数据库中索引的优缺点 为什么要创建索引呢?这是因为,创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。第二,可以大大加快数据的检索速度,这也是创建索引的最...
  • 数据库索引的优缺点和分类

    千次阅读 2016-08-19 16:42:42
    1、索引的概念 索引就是为了提高数据的检索速度。数据库索引类似于书籍的索引。...在数据库中,索引也允许数据库程序迅速地找到中的数据,而不必扫描整个数据库. 2、索引的优点  1.创建唯一性
  • 为mysql数据库建立索引;mysql索引总结----mysql 索引类型以及创建;mysql_建立索引的优缺点
  • 下面这个是不同数据库复制的语句 go use 原数据库名 go select * into 目的数据库名.dbo.目的表名 from 原表名 go 比如 insert into T_GRDA SELECT * FROM newtable 当如果重复列时,只想得到非重复...
  • 1、的主键、外键必须有索引; 2、数据量超过300的应该有索引; 3、经常与其他进行连接的,在连接字段上应该建立索引; 4、经常出现在Where子句中的字段,特别是大的字段,应该建立索引; 5、索引应该建在...
  • 索引的数据结构分析,数据库面试到索引最常见的问题分析,我总结了一下。
  • 数据库索引的优点与缺点

    千次阅读 2015-11-18 23:05:32
    索引对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。 数据库索引 什么是索引  数据库索引好比是一本书前面的目录,能加快数据库的查询速度。  例如这样一个...
  • 索引是存放在模式中的一个数据库对象,在数字字典中独立存放,但不能独立存在,一个索引必定归属某一个,其唯一作用就是加速对表的查询,就好比一本厚厚的书了一个目录,可以根据目录快速定位到需要的位置,索引通过...
  • 如何某的某个字段主键约束和唯一性约束,则Oracle 则会自动在相应的约束列上建议唯一索引数据库索引主要进行提高访问速度。 建设原则:  1、索引应该经常建在Where 子句经常用到的列上。如果某个大经常...
  • 数据库索引

    千次阅读 多人点赞 2019-08-20 22:49:54
    索引对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。数据库索引好比是一本书前面的目录,能加快数据库的查询速度。索引分为聚簇索引和非聚簇索引两种,聚簇索引是按照...
  • 第一、通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 第二、可以大大加快 数据的检索速度,这也是创建索引的最主要的原因。 第三、可以加速表和表之间的连接,特别是在实现数据的参考完整性方面...
  • 数据库建立索引的优缺点

    千次阅读 2019-04-01 14:21:34
    索引就像是书的目录,是与或视图关联的磁盘上结构,可以加快从或视图中检索行的速度。索引中包含由或视图中的一列或多列生成的键。这些键存储在一个结构(BTree)中,使SQL可以快速有效地查找与键值关联的行。...
  • 本文介绍了数据库索引,及其优、缺点。针对MySQL索引的特点、应用进行了详细的描述。分析了如何避免MySQL无法使用,如何使用EXPLAIN分析查询语句,如何优化MySQL索引的应用。 索引是一种特殊的文件(InnoDB数据上的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 81,908
精华内容 32,763
关键字:

对数据库表创建索引的缺点有