映射基数和弱实体集

映射基数

表示可以通过关系集与另一个实体关联的实体数

全部参与

实体集中的每个实体至少参与关联集中的一个关联,用双线表示

示例:学生在导师关系中的参与是全部

部分参与

某些实体可能不参与关系集中的任何关系

示例:教师对指导的参与是部分的(有些教师不是导师,没有指导学生)

实体集

码:实体集或关系集的一组属性

可以使用一个实体中这些属性的值来唯一区分该实体与其他实体,或者一个关系中这些属性的值用于唯一标识关系。

码包括:超码、候选码、主码(主键)

弱实体集

没有主键的实体集称为弱实体集,必须以另一个实体或多个实体的存在为前提的实体。用双线矩形框表示。

示例:付款(数量、日期、金额)

弱实体集E1只能通过另一个(强)实体集E2来区分,称为标识/所有者实体,它与E1有关联/关系R。

E2拥有E1,E1必须通过一个称为识别关系的R实例与E2相关。

R是从弱实体集E1到标识集E2的多对一(或一对一)

从实体集中删除冗余属性

示例:对于实体集

学生(ID、name、tot_cred、dept_name)

部门(dept_name、building、budget)

每个学生都有一个关联的部门,使用关系集stud_dept,学生中的属性dept_name复制了当前的信息,因此是多余的,需要删除。

Last updated