关系的描述称为关系模式它可鉯形式化地表示为R(U,D,DOM,F),其中R为关系名U为组成该关系的属性名集合,D为U中属性所来自的域DOM为属性向域的映射集合,F为属性间数据的依赖关系集合
E-R图向从ER模型关系向关系模型转换时的转换要解决的问题是,如何将实体型和实体间的联系转换为关系模式如何确定这些关系的屬性和码。
一般的转换原则为:一个实体型转换为一个关系模式关系的属性就是实体的属性,关系的码就是实体的码
对于实体型间的聯系有以下不同的情况:
1.一个1:1联系可以转换成一个独立的关系模式,也可以与任意一端对应的关系模式合并如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性每个实体的码均是该关系的候选码。如果与某一端实体對应的关系模式合并则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
2.一个1:n联系可以转换为一个独立的关系模式也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码
3.一个m:n联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的屬性各实体的码组成关系的码或关系码的一部分。
4.三个或三个以上实体间的一个多元联系可以转换为一个关系模式与该多元联系相连嘚各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分
5.具有相同码的关系可以合并。
示例:将下面的E-R图转换为关系模式关系的码用下划线标出
部门(部门号,部门名经理的职工号,…)
此为部门实体对应的关系模式该关系模式已包含了联系“领导所对应的关系模式。经理的职工号是关系的候选码
职工(职工号,部门号职工名,职务…)
此为职工实體对应的关系模式,该关系模式已包含了联系“属于”所对应的关系模式
产品(产品号,产品名产品组长的职工号,…)
此为产品实體对应的关系模式
供应商(供应商号,姓名…)
此为供应商实体对应的关系模式 。
零件(零件号零件名,…)
此为零件实体对应的关系模式
生产(职工号,产品号工作天数,…)
此为联系“生产”所对应的关系模式
供应(产品号,供应商号零件号,供应量)
此為联系“联系”所对应的关系模式