我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

大家好,我们又见面了,我是你们的朋友全战军。

索引的优点和缺点:

为什么要创建索引?

这是因为创建索引可以极大地提高系统性能。 首先,通过创建唯一索引,可以保证数据库表中每一行数据的唯一性。 其次,可以大大加快数据检索的速度,这也是创建索引的主要原因。 第三,它可以加速表之间的连接,这对于实现数据的引用完整性特别有意义。 第四,当使用分组和排序子句进行数据检索时,查询中分组和排序的时间也可以显着减少。 第五,通过使用索引,可以在查询过程中使用优化隐藏器来提高系统性能。

有人可能会问:添加索引有这么多好处,为什么不为表中的每一列都创建一个索引呢? 这种想法虽然有道理,但也是片面的。 虽然索引有很多优点,但是为表中的每一列都添加索引是非常不明智的。

这是因为添加索引也有很多缺点:

首先,创建和维护索引需要时间,并且这个时间随着数据量的增加而增加。

其次,索引需要占用物理空间。 除了数据表占用的数据空间外,每个索引还占用一定的物理空间。 如果要创建聚集索引,需要的空间会更大。

第三,在表中增删改数据时,必须动态维护索引,降低了数据维护速度。

哪些字段适合创建索引:

索引建立在数据库表中的某些列上。 因此,在创建索引时,应该仔细考虑哪些列可以建立索引,哪些列不能建立索引。

一般来说,应该在这些列上创建索引,例如:

首先,它可以加快对经常搜索的列的搜索速度;

其次,在作为主键的列上,强制该列的唯一性以及组织表中数据的排列结构;

第三,对于连接中经常使用的列,这些列主要是外键,可以加快连接速度;

第四,在经常需要根据范围搜索的列上创建索引,因为索引已经排序,并且其指定的范围是连续的;

第五,在经常需要排序的列上创建索引,因为索引已经排序,这样查询就可以利用索引的排序来加快排序查询时间;

第六,对WHERE子句中经常使用的列创建索引,以加快条件的判断速度。

建立索引一般是根据where条件。 例如:条件是where f1 和f2。 那么如果我们在字段f1或字段f2上索引简历是没有用的。 仅当我们同时在字段 f1 和 f2 上创建索引时,它才有用。 等待。

哪些字段不适合创建索引:

同样,有些列不应创建索引。 一般来说,不应该被索引的列具有以下特征:

首先,不应在查询中很少使用或引用的列上创建索引。 这是因为,由于这些列很少使用,因此无论是否建立索引,

它不会提高查询速度。 相反,由于索引的增加,降低了系统的维护速度,增加了空间需求。 其次,不应该在数据值较少的列上添加索引。 这是因为,由于这些列的值很少,例如人员表的性别列,

查询的结果中,结果集中的数据行占表中数据行的比例较大,即需要在表中查找的数据行比例较大。

增加索引并不会显着加快检索速度。 第三,不应将索引添加到定义为文本、图像和位数据类型的列中。 这是因为这些列的数据量要么很大,要么值很少。 第四,当修改性能远大于检索性能时,不应该创建索引。 这是因为修改性能和检索性能是相互矛盾的。

添加索引时,检索性能会提高,但修改性能会降低。 当减少索引时,修改性能会增加,检索性能会降低。

因此,当修改性能远大于检索性能时,不应该创建索引。

如何创建索引::

1、创建索引,如index on (list of ); 2、修改表,如alter table add index [索引名称](列列表); 3、创建表时指定索引,如table( […] , INDEX [索引名称] (列列表) );

如何查看表中的索引:

显示索引来自 ; 查看索引

索引类型和创建示例::

1.KEY(主键索引)

mysql> 更改表添加键 (``)

2.或者KEY(唯一索引)

mysql> 更改表添加 (``)

3.(全文索引)mysql> alter table add (`` )

4.INDEX(普通索引)mysql> alter table 添加索引(``)

5、多列索引(聚集索引) mysql> alter table `` 添加索引 ( ``, ``, `` )

二维码
扫一扫在手机端查看

本文链接:https://by928.com/77.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线