您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 薪酬管理 > ER图到关系模式的转换
ER图到关系模式的转换ER图向关系模式转换的基本问题基本问题–如何将ER图中的各种结构转换为关系模式ER图的结构包括–实体–联系–标识属性–非标识属性参照完整性与外键的概念外键:–如果关系A的一个属性不是关系A自身的主键,但它是关系B的主键,则称该属性是关系A依赖于(引自)关系B的外键参照完整性(即包含依赖)–一个关系中的某个属性上的全部取值包含在另一个关系的某个属性上的全部取值中外键一定要符合参照完整性外键的例子假设有“关系”和“部门”两个关系模式,其关系模式分别是–职工(工号,姓名,性别,出生日期)–部门(部门编号,名称,地点)为了表达“职工在部门工作”的联系语义,将“职工”所在部门的编号放入职工的关系模式中,此时,“部门编号”就是关系“职工”的外键–职工(工号,姓名,性别,出生日期,部门编号)这样做虽然增加了数据的冗余,但对于表示实体间的联系是有必要的、有利的同时,“职工”中的部门编号的取值一定要包含在“部门”中的部门编号的取值域中,这就是参照完整性实体的转换方法一个实体转换为一个关系模式,其中实体标识转换为关系模式的主键(即标识属性转换为键属性),非标识属性转换为非键属性例如:职工工号姓名性别出生日期转换为职工(工号,姓名,性别,出生日期)两实体一对一联系的转换方法对于两实体的一对一联系,转换时可以将其中任何一方实体的标识属性放入另一方实体的关系模式中作为外键,并将联系的属性也加入其中可以选择将强制存在一方实体的标识属性放入另一方实体的关系模式中,以避免处理空值双方都是可选存在时,可以做相互引用的处理两实体一对一联系转换的例子报告缩写含有11职工部门管理1110工程师电脑使用1100两实体一对多联系的转换方法对于两实体的一对多联系,转换时可以将“1”方实体的标识属性加入“多”方实体的关系模式中作为外键,并将联系的属性也加入其中反之,会产生多值属性两实体一对多联系转换的例子职工部门工作于M111转换为职工(工号,姓名,…,部门编号)部门(部门编号,部门名称,…)职工[部门编号]部门[部门编号]两实体多对多联系的转换方法将两实体的多对多联系转换为一个关系模式,将相关实体的标识属性作为外键加入其中,并且它们联合构成该关系模式的主键两实体多对多联系转换的例子工程师行业协会属于MN00转换为工程师(工号,姓名,…)行业协会(协会名,…)属于(工号,协会名,…)属于[工号]工程师[工号]属于[协会名]行业协会[协会名]单实体联系的转换方法对于单实体的一对一联系,转换时可以将联系中实体的标识属性加上实体角色的前缀放入该实体的关系模式中,作为引自本身的外键对于单实体的一对多联系,转换时可以将联系中实体的标识属性加上“1”方实体角色的前缀放入该实体的关系模式中,作为引自本身的外键将单实体的多对多联系转换为一个关系模式,将实体的标识属性加上两个相关的实体角色前缀加入其中,它们分别是两个外键,并且联合构成该关系模式的主键单实体联系转换的例子职工结婚11工程师小组领导1N职工合作MN多实体联系的转换方法将多实体联系转换为一个关系模式,将所有相关实体的标识属性加入其中作为外键,该关系模式的主键的确定分以下几种情况–1:1:1联系•任选两个实体的标识属性联合作为主键–1:1:多联系•任选一个“1”方实体和“多”方实体的标识属性联合作为主键–1:多:多联系•选择两个“多”方实体的标识属性联合作为主键–多:多:多联系•三个实体的标识属性联合作为主键多实体联系转换的例子使用笔记本项目技术员111分配到地点项目职工11N使用技能项目职工PNM管理工程师项目经理NM1
本文标题:ER图到关系模式的转换
链接地址:https://www.777doc.com/doc-3355207 .html