• 数据库中索引的结构和什么情况下不适合建索引,数据库索引是如何实现的?


    1>数据库中索引的结构是一种排序的数据结构。

    2>数据库索引是通过B树和变形的B+树实现的。

    3>什么情况下不适合建立索引?

      1.对于在查询过程中很少使用或参考的列,不应该创建索引。

      2.对于那些只有很少数据值的列,不应该创建索引。

      3.对于那些定义为image,text和bit数据类型的列,不应该创建索引。

      4.当修改性能远大于检索性能,不应该建立索引。

    4>建立索引的优点?

      1.通过创建唯一性的索引,可以保证表中每一行数据的唯一性;

      2.可以大大加快表中数据的检索素的,这也是创建索引的主要原因;

      3.可以加快表与表之间的链接,特别是在实现表与表之间的参考完整性实现有特别的意义;

      4.通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统性能。

    5>建立索引的缺点?

      1.创建索引和维护索引耗时,时间随着数据的增加而增加,成正比;

      2.索引需要占物理空间,除了数据表占数据空间外,每一个索引还要占一定的物理空间,如果建立聚簇索引,占得物理空间会更大;

      3.当对表中的数据进行维护时,对索引也要进行维护,这样就降低了数据的维护速度。

    可以在数据库中建立三种索引:唯一索引,主键索引,聚集索引。

    唯一索引(unique) :不允许任意两行具有相同索引值的索引。

    主键索引(primary):数据表中经常有一列或多列组合,其职唯一标识要求主键中的每表中的每一行,则该列称为主键。个值都是唯一的,当查询时使用主键索引,他还允许对数据的快速访问。

    聚集索引():表中行的物理顺序和表中的逻辑顺序相同。一个标志能有一个聚集索引。

    如果一个索引不是聚集索引,则表中的数据的物理顺序和表中的逻辑顺序不相同。

  • 相关阅读:
    逻辑卷扩容
    iptables网络防火墙||SNAT,DNAT等转发路由动作
    常用rman操作语句
    常用Oracle的SQL语句
    oracle中的单引号和双竖线||以及q'间隔符
    网站升级HTTPS教程
    站长必备:网站被黑后怎么快速搞定
    常见HTTP错误代码
    在Android中实现一个简易的Http服务器
    Android开发新手常见的10个误区
  • 原文地址:https://www.cnblogs.com/chenyang920/p/5268665.html
Copyright © 2020-2023  润新知