数据库——数据库设计 E-R图向关系模型的转换
1、将下列物资管理E-R图转换为关系模式:

转换原则
⒈ 一个实体型转换为一个关系模式。
关系的属性:实体型的属性
关系的码:实体型的码
关系的属性:与该联系相连的各实体的码以及联系本身的属性
关系的码:各实体型码的组合
⒌ 3个或3个以上实体间的一个多元联系转换为一个关系模式。
关系的属性:与该多元联系相连的各实体的码以及联系本身的属性
关系的码:各实体码的组合
目的:减少系统中的关系个数
供应商(供应商号,姓名,地址,电话号,账号)
2.一个实体型转换为一个关系模式:
项目(项目号,预算,开工日期)
零件(零件号,名称,规格,单价,描述)
4. 3个或3个以上实体间的一个多元联系转换为一个关系模式。
供应(供应商号,项目号,零件号,供应量)
5.一个实体型转换为一个关系模式:
仓库(仓库号,面积,电话号)
职工(职工号,姓名,年龄,职称,仓库号,领导职工号)
7. 一个m:n联系转换为一个关系模式。
库存(仓库号,零件号,库存量)
2019/6/19更新
答:
各实体属性为:
系:系编号,系名
班级:班级号,班级名
教研室:教研室号,教研室
学生:学号,姓名,学历
课程:课程号,课程名
教员:职工号,姓名,职称
联系的属性: “选修”的属性为“成绩”
转换为关系模型如下:
系(系编号,系名,学校名)
班级(班级号,班级名,系编号)
教研室(教研室号,教研室,系编号)
学生(学号,姓名,学历,班级号,导师职工号)
课程( 课程号,课程名)
教员(职工号,姓名,职称,教研室号)
选修(学号,课程号,成绩)
对于该题一个疑问就是学校也是一个实体,按照转换的原则,一个实体型转换为一个关系模式,那么应该有一个学校的关系模型,但这里并没有出现,个人认为该题应该是因为学校的属性不明确,才没有去加,正常来说应该要加上学校。
8 .某工厂生产若干产品,每种产品由不同的零件组成, 有的零件可用在不同的产品上。这些零件由不同的原材料制成, 不同零件所用的材料可以相同。 这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。请用 E 一 R 图画出此工厂产品、零件、材料、仓库的概念模型。
答:
各实体属性为:
产品:产品号,产品名
零件:零件号,零件名
原材料:原材料号,原材料名,类别
仓库:仓库号,仓库名
各联系的属性为:
产品组成:使用零件量
零件制造:使用原材料量
零件存储:存储量
材料存放 :存储量
转换为关系模型如下:
产品(产品号,产品名,仓库号)
零件:零件号,零件名
原材料:原材料号,原材料名,类别,仓库号,存放量)
仓库(仓库号,仓库名)
产品组成(产品号,零件号,使用零件量)
零件组成(零件号,原材料号,使用原材料量)
零件储存(零件号,仓库号,存储量)
数据库——数据库设计 E-R图向关系模型的转换的更多相关文章
- E-R图向关系模式的转换
转自: http://hi.baidu.com/qicaiqinxian/blog/item/a8bb0bdf31ae081b63279887.html E-R图向关系模型转换时犯糊涂了,找到下面这篇 ...
- 数据库精华知识点总结(1)—数据库的三层模式和二级映像,E-R(实体联系图)图,关系模型
Data base: 长期存储在计算机内,有组织的,可共享的大量数据集合.基本特征:永久存储,可共享,有一定的物理和逻辑结构. Data base manage system(DBMS):用户和os之 ...
- 新人浅谈__(数据库的设计__数据库模型图,数据库E-R图,三大范式)
>>>> 为什么需要规范的数据库设计 在实际的项目开发中,如果系统的数据存储量较大,设计的表比较多,表和表之间的关系比较复杂,就需要首先考虑规范的数据库设计,然后进行创建库, ...
- E-R图转换为关系模型
E-R模型如何转换成关系模型,这里我们分成三种情况进行讲解,分别是一对一,一对多和多对多. 1.一对一的情况: 有两种方法解决这个问题.第一个方法:可以单独对应一个关系模式,由各实体的主码构成关系模式 ...
- 数据库系统(四)---关系型数据库设计及E-R图
1.关系型数据库: 关系型数据库是一类采用关系模型作为逻辑数据模型的数据库系统,遵从数据库设计的基本步骤,包括:需求分析.概念结构设计.逻辑结构设计.物理结构设计.数据库实施.数据库的运行和维护等阶段 ...
- 数据库设计和ER模型-------之关系模型的基本概念(第二章)
关系模型的基本术语 定义:用二维表格来表示实体集,用关键码表示实体之间联系的数据模型称为关系模型 有时也习惯称呼关系为表或表格,元组为行(Row),属性为列.关系中属性个数称为“元数”,元组个数称为“ ...
- SQL Server 进阶 01 数据库的设计
SQL Server 进阶 01 数据库的设计 本篇目录 课程内容回顾及介绍 为什么需要规范的数据库设计 设计数据库的步骤 绘制E-R(实体-关系)图 实体-关系模型 如何将E-R图转换为表 数据规范 ...
- 服装销售系统数据库课程设计(MVC)
<数据库课程设计> 名称:Jia服装销售网站 姓名:陈文哲 学号:…… 班级:11软件工程 指导老师:索剑 目录 目录 1 需求分析 3 一:销售部门机构情况 3 二:销售部门的业务活动情 ...
- COSCon'19 | 如何设计新一代的图数据库 Nebula
11 月 2 号 - 11 月 3 号,以"大爱无疆,开源无界"为主题的 2019 中国开源年会(COSCon'19)正式启动,大会以开源治理.国际接轨.社区发展和开源项目为切入点 ...
随机推荐
- 利用Haproxy搭建 HTTP 请求走私(Request smuggling)环境
Haproxy 介绍 HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. 请求走私(Request smuggling)概念证 ...
- [Linux]centos下安装memcached
一.yum安装 1.Linux系统安装memcached,首先要先安装libevent库. yum install libevent libevent-devel 2.安装memcached yum ...
- vscode 启动
code --user-data-dir /root/vscode code --user-data-dir /root/vscode
- 集合系列 Queue(九):PriorityQueue
PriorityQueue 是一个优先级队列,其底层原理采用二叉堆实现.我们先来看看它的类声明: public class PriorityQueue<E> extends Abstrac ...
- SpringBoot与数据层
1.JDBC <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
- Hyperledger Fabric相关文件解析
1相关文件说明 这一部分涉及相关配置文件的解析, 网络的启动涉及到多个文件,本文按以下顺序进行分析: . ├── base │ ├── docker-compose-base.yaml #1 │ ...
- javascript ES6 新特性之 解构
解构的作用是可以快速取得数组或对象当中的元素或属性,而无需使用arr[x]或者obj[key]等传统方式进行赋值 var arr = [1, 2, 3]; //传统方式 var a = arr[0], ...
- go源码解析-Println的故事
本文主要通过平常常用的go的一个函数,深入源码,了解其底层到底是如何实现的. Println Println函数接受参数a,其类型为-interface{}.用过Java的对这个应该比较熟悉,Java ...
- 【Luogu P3994】高速公路
Problem Background \(C\) 国拥有一张四通八达的高速公路网树,其中有 \(n\) 个城市,城市之间由一共 \(n-1\) 条高速公路连接.除了首都 \(1\) 号城市,每个城市都 ...
- stars-one的原创工具——APK签名验证破解工具
ASCTool APk签名验证破解工具 APK Signature Crack Tool 本工具只对那些仅通过 PackageManager.getPackageInfo().signatures 来 ...