软考高级:数据库- 候选键、主键、外键

在数据库设计中,候选键、主键和外键是三个非常重要的概念。为了更好地理解它们,我们可以用通俗的例子来帮助说明。

通俗示例

假设我们在一个学校里管理学生的信息。每个学生都有一个独一无二的学号、名字、身份证号和手机号。这些信息都可以用来唯一标识一个学生,但在实际操作中,我们会选择一个最合适的作为主要标识。

通俗解释

  1. 候选键(Candidate Key)

    • 定义:候选键是指能够唯一标识数据库表中每一行记录的一个或多个字段。它们是“候选”,因为从这些键中可以挑选出一个作为主键。
    • 例子:在学生信息表中,学号、身份证号、手机号都可以是候选键,因为每个键都可以唯一标识一个学生。
  2. 主键(Primary Key)

    • 定义:主键是从候选键中选出来的,用于唯一标识数据库表中的每一行记录的字段。一个表只能有一个主键,且主键的值不能重复,也不能为空。
    • 例子:假设我们决定用“学号”作为学生信息表的主键,这意味着每个学生的学号都是唯一的,不会有两个学生拥有相同的学号。
  3. 外键(Foreign Key)

    • 定义:外键是一个表中的字段,它用来建立和另一张表之间的连接。外键值通常是另一张表的主键值,用于保证数据的一致性和完整性。
    • 例子:假设我们还有一张“成绩表”,其中的“学生学号”字段就是一个外键,它引用了学生信息表中的“学号”主键。这确保了成绩表中的每条记录都对应一个存在的学生。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

例一, A1 入度为 0 ,而且可以遍历全图。
例二, EGFJIH 都有入度,只有 ABCD 而且可以遍历全图。

在这里插入图片描述
没有入度为 0
有出度的,中间结点,分别看是否可以遍历全局。 A 可以推导全局, B 也可以,所以是 A 和 B。

在这里插入图片描述
入度为0的 A 和 D ,如果不能遍历就加入中间结点,所以必须有 A和 D 选C

候选关键字中的属性都是主属性,所以 4 个都是主属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明明如月学长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值