← 前一天目录后一天 →

每日科普 · 2026-09-24 周四

考研 408 × 求职面试

知识点 · 数据库系统 · 基础

关系的码:超码、候选码、主码与外码

关系是一张二维表,码用来唯一标识和建立联系。 1. 超码:能唯一区分表中每个元组的属性集。它可能包含多余属性,如学生表中(学号,姓名)若学号已唯一,则它也是超码。 2. 候选码:最小的超码,去掉其中任一属性就不能唯一标识元组。一个关系可有多个候选码,如学号和身份证号。 3. 主码:从候选码中选定一个作为主要标识,唯一且不能为空。如选学号为主码。 4. 外码:本关系中的属性或属性组,引用另一关系的主码或候选码,用于表示表间关联。如选课表的学号引用学生表学号。外码值可以为空(视业务约束),也可以重复。 记忆:候选码=最小超码,主码=被选中的候选码,外码=引用别人的码。

每日一题 · 数据库系统

关系的码:超码、候选码、主码与外码

关系 R(A,B,C),函数依赖 F={A→B, B→C}。下列哪个是候选码? A. A B. AB C. AC D. B

解析

选 A。候选码必须能唯一标识元组且最小。计算闭包:A+=ABC,所以 A 能决定全部属性,是超码;A 的真子集为空,不能决定全部,故 A 是候选码。AB、AC 虽也能唯一标识,但含多余属性,只是超码,不是候选码。B+=BC,不能决定 A,不是候选码。

面试小贴士 · 数据库系统

关系的码:超码、候选码、主码与外码

面试常问候选码与主码、超码的区别,以及外码是否可空。答法:先给定义,再强调候选码最小性、主码唯一非空、外码引用候选码且可重复可空。易错点:把超码当候选码、把主码当唯一码、忘记码可以是属性组。
← 前一天目录后一天 →