如何理解数据库中的主键,外键以及索引

清浅
清浅 原创
2019-03-20 15:21:11 4845浏览

数据库中的主键指的是能够唯一标识一条记录的属性或属性组,外键指的是另一张表中的主键起到与其他表建立联系的作用,索引是用来快速查找具有特定值的记录

【推荐课程:数据库教程

数据库中的主键

数据库中的主键指的是在一个属性组中能够唯一标识一条记录的属性或属性组。在一个表中只能有一个主键而且不能够重复,也不能为空值。主键常常与外键构成参照完整性约束,目的就是防止出现数据的不一致。在数据库管理系统中对主键自动生成唯一索引,因此主键是一个特殊的索引

例:

学生表(学号,姓名,班级)

由于每个学生的学号是唯一的因此学号就是一个主键

课程表(课程ID,课程名)

由于课程ID是唯一的,因此它就是一个主键

成绩表(学号,课程ID,成绩)

在成绩表中单一一个属性是无法标识一条记录的,需要学号和课程ID组合起来才可以起到标识记录的作用,因此它俩组合一起是一个主键

数据库中的外键

外键是用于建立与另一张表的关联,是确定另一张表中记录的字段。外键是另外一张表的主键,可以有多个且重复,也可以是空值。外键的目的在于使表中的数据保持一致性

例:

如上述的案例中,学号不是成绩表中的主键但是它是学生表中的主键因此我们就可以称成绩表中的学号是学生表的外键

数据库中的索引

索引指的是用来快速地寻找具有特定值的记录。目的是为了检索方便加快访问速度, 按照一定规则创建,起到排序的作用

主键、外键和索引的区别

这三者的区别如下所示


主键外键 索引
定义唯一标识一条记录,不能有重复和空值是另一个表的主键,可以重复和空值没有重复值但可以有空值
作用用来保证数据完整性建立与其他表的联系提高访问速度
个数主键只能有一个可以有多个可以有多个唯一索引

总结:以上就是本篇文章的全部内容了,希望对大家学习有所帮助。

以上就是如何理解数据库中的主键,外键以及索引的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。