E R图向关系模型的转换ppt课件.ppt
7.4.1 E-R图向关系模型的转换,用E-R图描述了系统中实体集与实体集之间的联系,但是E-R模型只能说明实体间语义的联系,还不能进一步说明详细的数据结构。一般遇到一个实际的问题,总是先设计一个E-R模型,然后再把E-R模型转换为计算机可以实现的数据模型,在这里以关系模型为例。前面已经介绍了实体集之间的联系,为(1:1)、(1:n)和(m:n)3种联系之一,下面根据3种联系介绍从E-R图获得关系模式的方法。,1(11)联系的E-R图到关系模式的转换2(1n)联系的E-R图到关系模式的转换3(mn)联系的E-R图到关系模式的转换,1、(11)联系的E-R图到关系模式的转换,转换原则:每个实体集各对应一个关系模式;对于(1:1)的联系,1)可以单独对应一个关系模式:由联系属性、参与联系的各实体集的主码构成关系模式,其主码可选参与联系的实体集的任一主码。2)也可以由联系属性及一方的主码加入到另一方实体集对应的关系模式。,(11)联系的E-R图到关系模式的转换,方法1:班级(班级编号,院系,专业,人数)正班长(学号,姓名)属于(学号,班级编号),方法2:班级(班级编号,院系,专业,人数)正班长(学号,姓名,班级编号),关系模式:职工表(编号,姓名,年龄,学历)系(系号,系名,系主任编号,任职时间),(11)联系的E-R图到关系模式的转换,请写出该E-R模型的关系模式,方法1:厂长(身份证号,姓名,年龄,性别,入厂时间)工厂(编号,厂名,成立时间,地址)管理(身份证号,编号)方法2:厂长(身份证号,姓名,年龄,性别,入厂时间)工厂(编号,厂名,成立时间,地址,身份证号),2、(1n)联系的E-R图到关系模式的转换,转换原则:每个实体集各对应一个关系模式;对于(1:n)的联系,1)可以单独对应一个关系模式:由联系属性、参与联系的各实体集的主码构成关系模式,n端的主码为该关系模式的主码。2)也可以由联系属性及1端的主码加入到n端实体集对应的关系模式中,主码仍为n端的主码。,(1n)联系的E-R图到关系模式的转换,方法1:班级(班级编号,院系,专业,人数)学生(学号,姓名,年龄,性别)属于(学号,班级编号),方法2:班级(班级编号,院系,专业,人数)学生(学号,姓名,年龄,性别,班级编号),(1n)联系的E-R图到关系模式的转换,关系模式:仓库(仓库号,地点,面积)商品(商品号,商品名,价格,仓库号,数量),练习:现有一个银行数据库,包括顾客和帐户的信息。顾客信息包括姓名,地址,电话,社会保险号。帐户包括编号,类型(例如存款,支票),和金额,请将该E-R模型图转换为关系模式。,关系模式1:顾客(身份证号码,姓名,地址,电话,社会保险号)帐户(编号,金额,类型)拥有(编号,身份证号码)关系模式2:顾客(身份证号码,姓名,地址,电话,社会保险号)帐户(编号,金额,类型,身份证号码),3、(mn)联系的E-R图到关系模式的转换,转换原则:每个实体集各对应一个关系模式;对于(m:n)的联系,单独对应一个关系模式,该关系模式包括联系的属性、参与联系的各实体集的主码属性,该关系模式的主码由各实体集的主码属性共同组成。,(mn)联系的E-R图到关系模式的转换,关系模式:student(学号,姓名,专业,班级,出生日期,性别,照片)course(课程编号,课程名称,课程类别,学分)selection(学号,课程编号,成绩),关系模式:教师(职工号,姓名,职称)课程(课程号,课程名,学分)教学(职工号,课程号,上课时间,质量),(mn)联系的E-R图到关系模式的转换,在设计好一个项目的关系模式后,下一步的任务是选择合适的数据库管理系统,利用其提供的命令语句,创建数据库,创建数据库的关系表,输入相应数据,并根据需要对数据库中的数据进行各种操作。,例1:某学校的教学管理系统的E-R图模型的实体有:教师,学生,项目,课程,其 E-R图如图所示,请将E-R图转换为关系模式。,关系模式:教师(教师号,教师名,职称)课程(课程号,教师号,课程名,分数)学生(学号,姓名,性别,年龄)项目(项目号,项目名,负责人)参加(教师号,项目号)选修(学号,课程号),例2:请将该E-R图转换为关系模式。,关系模式:仓库(仓库号,面积,电话号码)零件 (零件号,名称,规格,单价,描述)供应商(供应商号,姓名,地址,电话号码,帐号)项目(项目号,预算,开工日期)职工(职工号,姓名,年龄,职称,仓库号)供应1(供应商号,项目号,供应量)供应2(供应商号,零件号,供应量)供应3(项目号,零件号,供应量)库存(仓库号,零件号,库存量),