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


本文摘自PHP中文网,作者清浅,侵删。

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

【推荐课程:数据库教程

数据库中的主键

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

例:

1

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

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

1

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

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

1

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

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

数据库中的外键

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

例:

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

数据库中的索引

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

主键、外键和索引的区别

这三者的区别如下所示


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

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

以上就是如何理解数据库中的主键,外键以及索引的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

mysql如何添加索引的具体介绍

phpmyadmin新建数据表时怎么设置主键

navicat怎么查看表中的外键

mysql索引在什么位置

mysql怎么修改列名为主键

mysql创建索引有什么技巧

mysql什么时候用索引

mysql索引命中规则讲解

实例介绍mysql索引的使用

navicat premium中如何创建主键

更多相关阅读请进入《主键》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...