E-R图转换为关系模型

E-R模型如何转换成关系模型,这里我们分成三种情况进行讲解,分别是一对一,一对多和多对多。

1.一对一的情况:

  有两种方法解决这个问题。第一个方法:可以单独对应一个关系模式,由各实体的主码构成关系模式,而关系模式的主码可以是任一个实体集的主码。而实体中属性照常写就可以了。第二个方法:实体中的属性照常写,然后将一方实体集的主码加到另一方实体集对应的关系模式中。下面举个例子我们来看一下:

在这个例子中,利用方法一,先将两个实体正班长和班级的属性照着写下来,然后将关系模式“属于”的属性写出来——即两边实体的主码,其中关系模型“属于”的主键可以是两端实体集的任一主码。利用方法二,也是先将两端实体的属性照着写下来,然后注意这一点,将一端实体的主码加到另一端实体的主码中,图例中就是将“班级”实体的主码加入到“正班长”关系属性中。

2.一对多的情况:

  这种情况可以跟一对一的情况对比着学习。第一个方法:同一对一的方法一是差不多的,只是对应的关系模式中,其主码不再是任一实体的主码就可以,而是必须指定n端的主码为关系模式的主码。第二个方法:同一对一的方法二也是差不多的,但是值得强调的是,必须将1端的主码加到n端的关系模式中,而且n端的主码仍然为该关系模式中的主码。同样,我们也来举个例子。

如图,在方法一中,关系模式的主键是n端学生实体的主键。在方法二中,将一端对应的实体主键“班级编号”加入到了对应n端“学生”的关系模式中,并且,n端的主码仍然为该关系模式的主码。

3.多对多的情况:

  对于多对多的联系,似乎是这三种类型中最简单的一个了。其转换原则为:每个实体集对应一个关系模式,对于多对多的联系,其单独对应一个实体集,该实体集的主码由各实体集的主码共同构成。我们同样来看一个例子。

在上图这个例子中,每个实体集都对应一个关系模式,其联系“选课”也对应一个关系模式,这个关系模式的主码便是两端实体集的主码。关于E-R模型转化成关系模型我们就学到这里,其实很简单,只要掌握了要领,做几个例子,就会很好的上手,就会达到掌握的目的了。

学生:学号,姓名,性别,年龄

课程:课程编号,课程名

选修:学号,课程编号,分数

教师:教师编号,教师名,职称,课程编号

参加:教师编号,项目编号

项目:项目编号,项目名,项目负责人

职工:职工号,姓名,年龄,职称

仓库:仓库号,面积,电话号码

工作:职工号,仓库号

库存:仓库号,零件号,库存量

零件:零件号,名称,规格,单价,描述

供应商:供应商号,姓名,地址,电话号码,账号

供应:项目号,供应商号,零件号,供应量

项目:项目号,预算,开工日期

原文地址:https://www.cnblogs.com/yijiahao/p/11707183.html

时间: 2025-01-04 10:56:45

E-R图转换为关系模型的相关文章

数据库精华知识点总结(1)—数据库的三层模式和二级映像,E-R(实体联系图)图,关系模型

Data base: 长期存储在计算机内,有组织的,可共享的大量数据集合.基本特征:永久存储,可共享,有一定的物理和逻辑结构. Data base manage system(DBMS):用户和os之间的一层数据管理软件. 1.提供数据操纵语言DML对数据库增删改查 2.数据库的建立和维护 3.提供数据控制功能:在数据库建立,运行和维护时,DBMS管理数据的安全性,完整性,并发控制和故障的系统恢复,(也就是数据库的事务管理和运行管理) 4.与其它软件系统通信 Data base system(D

E-R图向关系模式的转换

转自: http://hi.baidu.com/qicaiqinxian/blog/item/a8bb0bdf31ae081b63279887.html E-R图向关系模型转换时犯糊涂了,找到下面这篇文章, 话说的真别扭, 不过问题算是能解决了, E-R图向关系模式的转换要解决的问题是如何将实体型和实体间的联系转换为关系模式,如何确定这些关系模式的属性和码. 关系模型的逻辑结构是一组关系模式的集合.E-R图则是由实体型.实体的属性和实体型之间的联系3个要素组成.所以将E-R图转换为关系模型实际上

关系型数据库-关系模型R(U,D,dom,F)解析

关系模型可以形式化表示为R(U,D,dom,F) R:关系名 D:属性的域 dom:属性的映射关系 F:依赖关系 就表A(A1,A2,A3)而言: 1.A为关系名(R). 2.如果A1为number(2)类型,那么属性的域为-99~99之间,即为A1属性的域(D). 3.如果A2属性为身份,域可为 ”导师“ 和 ”研究生“ ,对应于导师和研究生都有一个(列表)域,这种对应关系称之为属性的映射关系(dom). 4.在A表中A1是主键,如果A1表满足2NF,那么有F={A1-->A2,A1-->A

关系模型介绍

2.1 关系数据库的结构 关系数据库由表(table)的集合构成,每个表有唯一的名字.例如,instructor表记录了有关教师的信息,它有四个列首:ID.name.dept_name和salary.该表中每一行记录了一位教师的信息,包括该教师的ID.name.dept_name以及salary.类似的,course表存放了关于课程的信息,包括每门课程的course_id.title.dept_name和credits.注意,每位教师通过ID列的取值进行标识,而每门课程则通过course_id列

数据库设计之E-R模型转换成关系模型

个人重构版机房收费系统中需要自己重新设计数据库,那么如何设计数据库呢?这也是咱们自考中一门重要的课程<数据库原理>,对于考过这科的同学想必已经从中受益,直接就可以学以致用.我是今年10月份考这本书,所以就先实践一把. 原先看过的耿建玲老师的视频,里面重点讲解的是数据库内部的具体操作,没有怎么涉及到数据库设计中不可或缺的一个步骤即从概念模型到逻辑模型的转换.进入正题: 背景:数据系统生存期 我们把数据库应用系统从开始规划.设计.实现.维护到最后被新的系统取代而停止使用的整个期间,称为数据库系统生

数据仓库数据库设计方法---关系模型和多维模型比较分析

数据仓库中广泛采用的数据库设计模型有两种:关系型和多维型.普遍认为在数据仓库的设计方法中关系模型是“Inmon”方法而多维模型是“Kimball”方法. 先来看下关系模型,关系型数据以一种称为“标准化”的形式存在.数据标准化是指数据库设计会使数据分解成非常低的粒度级,标准化数据以一种孤立模式 存在,这种情况下对数据表里的数据关系要求很严格.一般遵循3NF范式.采用关系型设计的数据库一般具有较强的灵活性和多功能性(可以支持数据的多种视 图). 再来看下多维模型,多维模型一般有星型模式.雪花模式.混

关系模型关系模型

关系模型研究的内容 一个关系就是一个Table,关系模型就是处理Table的 在处理Table时涉及到以下内容 如何来描述一个Table,一个Table由哪些要素组成 规定Table上的操作和Table与Table之间的操作 定义表的约束与操作的约束 关系模型三要素 基本结构 (Table) 基本操作(U.-.X.σ.π.÷.∩) 完整性约束(实体完整.参照完整.用户自定义完整性) 表/关系 下图是对一张表的定义,我们称表也为关系. 域:所有可取的列值构成的集合.域的笛卡尔积的子集被成为关系.

关系代数 (关系模型)

理解关系数据库(关系模型),需要了解关系代数(关系模型). 关系代数有如下演算. ◆4つの集合演算 和集合演算(Union) 差集合演算(Difference) 共通集合演算(Intersection) 直積演算(Cartesian Product) ◆4つの関係演算 射影演算(Projection) 選択演算(Selection) 結合演算(Join) 商演算(Division) [和集合演算(Union)] 和(union)演算 R ∪ S は.R と S を.R の全ての組(タプル.行)と

2015lopdev生态联盟开发者大会:股市中的R语言量化算法模型

前言 记得10年前还在上学的时候,总是参加IBM的大会,看着各种新技术从实验室创造,特别地神奇.今天我也有机会站在了IBM大会的讲台上,给大家分享我所研究的R语言技术,对我来说也是一件非常有纪念意义的事情. 感谢IBM主办方的邀请,也真心希望有机会与IBM建立合作机会. 目录 我的演讲主题:股市中的R语言量化算法模型 会议体验和照片分享 整体文章:http://blog.fens.me/meeting-lopdev-20150922/