暂无 |

4 索引介绍

资料库与表格是MySQL资料库的基本元件,依照需求建立好的资料库与表格后,就可以使用它们来为你保存资料。一个设计良好的资料库,不论是资料的正确性,还有后续的维护与查询都比较不会发生问题。除了好好规划与建立资料库与表格外,你还可以利用「索引、index」预防你的资料出现问题,尤其是表格储存非常大量的纪录时,建立适当的索引,可以增加查询与维护资料的效率。

以「MyISAM」储存引擎来说,资料表的储存的纪录资料,是储存在电脑中的一个档案:

mysql_09_snap_52

当你执行一个像这样的查询叙述时:

mysql_09_snap_53

资料库要找到你需要查询或维护的纪录,如果没有索引帮助的话,就会从头开始一边读取,一边判断是否有符合条件的资料。你可以为表格建立索引来改善这种比较没有效率的方式:

mysql_09_snap_54

建立城市名称的索引档以后,同样执行下列的查询叙述,MySQL会自动使用索引来快速找到你需要的资料:

mysql_09_snap_55

注:索引同样可以增加删除或修改的效率。

索引分为主索引键(primary key)、唯一索引(unique index)与非唯一索引(non-unique index)三种。

主索引键的应用很常见,而且一个表格通常会有一个,而且只能有一个。在一个表格中,设定为主索引键的栏位值不可以重复,而且不可以储存「NULL」值。因为这样的限制,所以很适合使用在类似编码、代号或身份证字号这类栏位。

唯一索引也称为「不可重复索引」,在一个表格中,设定为唯一索引的栏位值不可以重复,但是可以储存「NULL」值。这种索引适合用在类似员工资料表格中储存电子邮件帐号的栏位,因为员工不一定有电子邮件帐号,所以允许储存「NULL」值,可以每一个员工的电子邮件帐号都不可以重复。

上列两种索引都可以预防储存的资料发生重复的问题,也可以增加查询与维护资料的效率。非唯一索引就只是用来增加查询与维护资料效率的索引。设定为非唯一索引的栏位值可以重复,也可以储存「NULL」值。

0

java教程
php教程
php+mysql教程
ThinkPHP教程
MySQL
C语言
css
javascript
Django教程

发表评论

    评价:
    验证码: 点击我更换图片
    最新评论