明确几个定义:码,主码,外码。
码:唯一标识实体的属性集。
主码:多个候选码中选择其中一个为主码。
外码:属性或属性组X不是关系模式R的码(既不是主码也不是候选码),但X是另一个关系模式的码,则称X是R的外部码,也称外码。
看外码定义,有两个要求,一是不能是本关系的码,还必须是另一个关系的码。
回到开头的码的定义,就知道了,外码不能是码,否则两个关系模式就成一个关系模式了,没有分开的必要了。这就是问题答案了。
但是,外码可以为主属性!即,可为主码的部分属性集。这点要注意!当然此时的外码不能为空。
Mysql外码
本文详细阐述了数据库中的码、主码和外码的概念。码是唯一标识实体的属性集;主码是从多个候选码中选定的唯一标识;外码则是指在当前关系中不是码但在另一个关系中是码的属性,强调了外码可以是主码的一部分,但不能是本关系的码,以保持关系模式的独立性。理解这些概念对于数据库设计至关重要。
1万+

被折叠的 条评论
为什么被折叠?



