数据库课后题E-R图
- 格式:docx
- 大小:117.56 KB
- 文档页数:4
er数据库练习题一、基本概念题1. ER模型中的“E”代表什么?2. 简述实体和属性的区别。
3. 在ER图中,用什么图形表示实体集?4. 什么是联系?联系可以分为哪几种类型?5. 简述实体集之间的联系与实体集内部联系的区别。
二、填空题1. ER图由实体集、联系和______三个基本要素组成。
2. 在ER图中,实体集之间的联系用______表示。
3. 若实体集A和B之间存在一对多联系,则B称为______实体集,A称为______实体集。
4. 实体集的属性可以分为两类:一类是______,另一类是______。
5. ER图中的联系可以是______、______和______。
三、判断题1. ER图只能表示实体集之间的联系,不能表示实体集内部的联系。
()2. 在ER图中,实体集的属性可以用椭圆形表示。
()3. 一个实体集只能有一个主键。
()4. ER图中的联系可以是实体集内部的联系。
()5. 实体集之间的联系必须通过联系来表示。
()四、选择题A. 矩形B. 椭圆形C. 菱形D. 三角形A. 一对一B. 一对多C. 多对多D. 自身联系A. 学号B. 姓名C. 性别D. 年龄A. 矩形B. 椭圆形C. 菱形D. 三角形A. 实体集的属性可以是简单属性或复合属性B. 联系可以分为一对一、一对多和多对多C. ER图只能表示实体集之间的联系D. 实体集的主键可以是单个属性或属性组合五、简答题1. 简述ER图的作用。
2. 如何确定实体集的主键?3. 请举例说明实体集之间的多对多联系。
4. 简述将ER图转换为关系模型的步骤。
5. 请解释什么是复合属性和派生属性。
六、绘图题实体集“学生”具有属性:学号(主键)、姓名、年龄、班级。
实体集“课程”具有属性:课程号(主键)、课程名、学分。
实体集“教师”具有属性:教师号(主键)、姓名、职称。
学生与课程之间是多对多联系,表示学生选课。
教师与课程之间是一对多联系,表示教师授课。
习题-ER图(附答案)7、⼀个图书馆借阅管理数据库要求提供下述服务:(1)可随时查询书库中现有书籍的品种、数量与存放位置。
所有各类书籍均可由书号惟⼀标识。
(2)可随时查询书籍借还情况,包括借书⼈单位、姓名、借书证号、借书⽇期和还书⽇期。
我们约定:任何⼈可借多种书,任何⼀种书可为多个⼈所借,借书证号具有惟⼀性。
(3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息下相应出版社增购有关书籍。
我们约定,⼀个出版社可出版多种书籍,同⼀本书仅为⼀个出版社出版,出版社名具有惟⼀性。
根据以上情况和假设,试作如下设计:(1)构造满⾜需求的E-R图。
(2)转换为等价的关系模式结构。
答:(1)满⾜上述需求的E-R图如图11所⽰。
(2)转换为等价的关系模式结构如下:借书⼈(借书证号,姓名,单位)图书(书号,书名,数量,位置,出版社名)出版社(出版社名,电报编号,电话可,邮编,地址)借阅(借书证号,书号,借书⽇期,还书⽇期)8、⼯⼚(包括⼚名和⼚长名)需建⽴⼀个管理数据库存储以下信息:(1)⼀个⼯⼚内有多个车间,每个车间有车间号、车间主任姓名、地址和电话。
(2)⼀个车间有多个⼯⼈,每个⼯⼈有职⼯号、姓名、年龄、性别和⼯种。
(3)⼀个车间⽣产多种产品,产品有产品号和价格。
(4)⼀个车间⽣产多种零件,⼀个零件也可能为多个车间制造。
零件有零件号、重量和价格。
(5)⼀个产品由多种零件组成,⼀种零件也可装配出多种产品。
(6)产品与零件均存⼊仓库中。
(7)⼚内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
试:(1)画出该系统的E-R图。
(2)给出相应的关系模式。
(3)画出该系统的层次模式图。
答:(1)该系统的E-R图如图12所⽰。
各实体的属性为:⼯⼚:⼚名、⼚长姓名车间:车间号、车间主任姓名、地址、电话⼯⼈:职⼯号、姓名、年龄、性别、⼯种仓库:仓库号、仓库主任姓名、电话零件:零件号、重量、价格产品:产品号、价格(2)相应的关系模式如下:⼯⼚(⼚名、⼚长姓名)车间(车间号、车间主任姓名、地址、电话、⼚名)⼯⼈(职⼯号、姓名、年龄、性别、⼯种、车间号)仓库(仓库号、仓库主任姓名、电话、长名)产品(产品号、价格、车间号、仓库号)零件(零件号、重量、价格、仓库号)制造(车间号、零件号)(3)该系统的层次模型图如图13所⽰。
题1:某学院的教学管理的对象是:系(系名,办公地址)、教师(教师工号、姓名、年龄、职称)、学生(学号,姓名,生日)、课程(课程号,课程名,学分)。
其中,一个系有多个教师每个教师只属于一个系,每个老师可上多门课,每门课只由一个老师上,每个学生可以在某学期选修多门课,每门课可有多个学生选修。
答:系(系名,办公室)主键:系名教师(教师工号,姓名,年龄,职称,系别)主键:教师工号外键:系别课程(课程号,课程名,学分,教师工号)主键:课程号外键:教师工号学生(学号,姓名,生日)主键:学号修读(学号,课程号)主键:学号+课程号外键:学号;课程号题2:某旅行社管理系统管理的对象是:景点(景点编号,景点名称,地点,景点描述)、线路(线路编号,线路名称,线路描述)、导游(工号,姓名,等级)、旅游团队(团队编号,人数,开始日期,截止日期),其中,每条线路由多个景点组成,不同线路的景点存在交叉;每条线路有多名导游,但一名导游只负责一条线路;每条线路可同时存在多个旅游团队,每个团队只可旅游一条线路。
旅游团队(团队编号,人数,开始日期,截止日期,线路编号)主键:团队编号外键:线路编号路线(线路编号,线路名称,线路描述)主键:线路编号导游(工号,姓名,等级,线路编号)主键:工号外键:线路编号景点(景点编号,景点名称,地点,景点描述)主键:景点编号组成(路线编号,景点编号)主键:线路编号+景点编号外键:线路编号;景点编号题3:某研究所科研管理系统情况如下:部门:包括部门号、部门名、办公室。
每个部门有多名职工。
职工:包括职工号、姓名、性别、年龄、职称、专业、简历。
简历:包括开始时间、终止时间、工作单位、担任职务。
项目:包括项目编号、项目名称、项目经费、项目来源、负责人。
每名职工可参加多个项目,每个项目可多名职工参加。
画出表达此问题的实体关系图。
根据设计E-R模型,将其转换成关系模型,并标出主外键。
部门(部门号,部门名,办公室)主键:部门号职工:(职工号,姓名,性别,年龄,职称,专业,部门号)主键:职工号外键:部门号简历:(开始时间,终止时间,工作单位,担任职务,职工号)主键:职工号+开始时间+终止时间外键:职工号参与(职工号,项目编号)主键:职工号+项目号外键:职工号;项目编号项目:(项目编号,项目名称,项目经费,项目来源,负责人)主键:项目编号题4:某医院有多个科室,每个科室有多名医生,每名医生只能在一个科室中工作。
(完整版)数据库课后题参考答案学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。
(1)请设计此学校的教学管理的E —R 模型。
(2)将E —R 模型转换为关系模型.2)系 (系号,系名,系主任)教师 (教师号,教师名,职称,系号) 学生(学号,姓名,年龄,性别,系号) 项目(项目号,名称,负责人)课程(课号,课程名,学分,教师号) 选修(课号,学号,分数) 负责(教师号,项目号,排名)3、设有下图所示的医院组织。
试画出其E —R 图及关系模式并用关系代数方法写出下面之查询公式:病房医生 病人图3-1 某医院人员组织关系框图 编号 名称所在位置主任姓名编号姓名患何种病 病房号编号 姓名年龄职称管辖病房号① 找出外科病房所有医生姓名; ② 找出管辖13号病房的主任姓名; ③ 找出管辖病员李维德的医生姓名。
关系模式:病房(编号、名称、所在位置、主任姓名)医生(编号、姓名、年龄、职称、管辖病房号) 病人(病号、姓名、患何种病、病房号)答案:就医病房号医生编号病人编号医生姓名位置负责①、''(外科位置医生姓名=∏σ() ②、'13'(=∏病房号主任姓名σ(病房))③、''(李维德病人姓名医生姓名=∏σ()第三章 习题一、单项选择题1、如果要在Windows 平台上运行DB2应用程序访问运行在UNIX 上的数据库服务器,需要在Windows 上安装那种产品?( )A DB2 企业服务器版B DB2 个人版C DB2 连接器D DB2 运行时客户端 答案:D2、下面那种产品不允许远程的客户端应用程序连接到该服务器?( ) A DB2 快速版 B DB2 个人版C DB2 企业服务器版D DB2 工作组服务器版 答案:B3、一个软件公司要开发一个需要访问DB2 for Linux 和DB2 for z/OS 的应用程序.下面那个产品最能满足这种需求?( )A DB2企业服务器版B DB2工作组服务器版C DB2连接器企业版D DB2通用开发版 答案:D4、下面那种产品不被认为是DB2服务器? ( ) A DB2快速版B DB2工作组服务器版C DB2个人版D DB2企业服务器版 答案:C5、下面那两种工具可以向数据库发出SQL语句进行查询? ()A 命令窗口B 命令中心C 命令行处理器D 命令处理器E 控制中心答案:B、C6、下面那种情况下,健康中心会发出报警:()A 表中的一行被删除B 运行LOAD工具C 当性能指标超过了预先定义的范围D 一条SQL语句由于语法错误而没有执行成功,并报错.答案:C二、填空题:1.DB2工具①可以用来在DB2中调度SQL脚本定期执行。
数据库设计(⼀)E-R图数据库设计定义: 指的是将应⽤中涉及的数据实体及这些数据实体之间的关系,进⾏规划和结构化的过程。
影响数据库系统效率的因素:数据库中创建的数据结构种类,以及在数据实体之间建⽴的关系好的设计:效率⾼,便于进⼀步扩展,使应⽤程序的开发变得容易糟糕的设计:效率低下,更新和检索数据时会出现许多问题。
⼀、设计的步骤:⼀般在项⽬开发需要经过:需求分析、概要设计、详细设计、代码编写、运⾏测试和部署上线这⼏个阶段,⽽数据设计在这⼏个阶段主要做的事,如下:(当然上线后有时也会出现改需求,动代码动数据库)//数据库设计时需要注意的需求分析阶段:分析客户业务和数据处理需求概要设计阶段:绘制数据库的E-R图,⽤于在项⽬团队内部、设计⼈员和客户之间的沟通,确认需求信息的正确性和完整性。
详细设计阶段:将E-R 图转换为多张表,进⾏逻辑设计,确认各表的主外键,并应⽤数据库设计的三⼤范式进⾏审核。
经项⽬开会讨论确定后,根据项⽬的技术实现、团队开发能⼒进⾏项⽬的成本预算,选择具体的数据库进⾏物理实现,之后就是开发应⽤程序注意:在需求分析阶段的重点是调查、收集并分析客户业务的数据需求、处理需求、安全性与完整性需求。
常⽤的需求调研⽅法:在客户的公司跟班实习、组织召开调查会、邀请专⼈介绍、设计调查表并请⽤户填写和查阅与业务相关的数据记录等。
常⽤的需求分析⽅法:调查客户的公司组织情况、各部门的业务需求情况、协助客户分析系统的各种业务需求和确定新系统的边界。
//在进⾏数据库系统分析时可参考的基本步骤1、收集信息:创建数据库之前,必须充分理解数据库需要完成的任务和功能,了解数据库需要存储哪些数据、实现哪些功能2、标识实体:收集信息后,标识数据库要管理的关键对象或实体。
(实体⼀般是名词,⼀个实体只描述⼀件事情,不能出现含义相同的实体,⽽且实体可以是有形的事物(如⼈或产品),也可以是⽆形的事物(如部门,时间))3、标识每个实体需要存储的详细信息:将数据库中的主要实体标⽰为表的候选实体以后,就要标识每个实体存储的详细信息,也称为该实体的属性,这些属性将组成表中列。
实验内容08 建模请使用visual studio建模或网络教学平台的建模工具建模。
1)根据现实世界的组织和工作过程将其转化成E-R图描述。
1.根据现实世界的组织和工作过程将其转换为E-R图描述。
其中一个员工属于一个部门,一个部门有多个员工;一个员工可以参加多个项目,一个项目可以有多个员工一起开发。
(1)你确定实体和实体的属性。
答:实体:员工,属性:员工号、姓名、性别、年龄、联系方式、参与项目、所属部门实体:部门,属性:部门名称、部门主管、联系电话、部门人数实体:项目,属性:项目名称、项目主管、参与人数、项目性质(2)确定员工和部门的联系、员工和项目之间的联系,给联系命名并指出联系的类型。
答:员工(表).所属部门和部门(表).部门名称,为所属,为一对多的联系。
员工(表).参与项目和项目(表).项目名称,为参与,为多对多的联系。
(3)确定联系本身的属性。
答:员工和部门为所属关系,员工和项目为参与关系。
(4)画出员工、部门、项目组成的E-R图。
2.将E-R图转换为关系表。
(1)将实体转换为关系表。
员工表:(3)写出表的关系模式并标注各自的主码和外码。
答:员工(员工号,姓名,性别,年龄,联系方式,参与项目,所属部门)外码:参与项目,所属部门部门(部门名称,部门主管,联系电话,部门人数)项目(项目名称,项目主管,参与人数,项目性质)(4)确定主要属性的约束条件。
答:员工的主属性为“员工号”约束为必须在所有员工号的集合之中。
部门的主属性为“部门名称”约束为必须在所有部门的集合之中。
项目的主属性为“项目名称”约束为必须在所有项目的集合之中。
3.设置关系表的模拟数据,视图转换的表不少于8条记录,联系转换的表不少于15条录。
员工表:项目表:4.设计对上述关系表的基本操作任务。
答:对员工表进行插入一个人员信息操作。
对员工表进行查询操作。
对部门表进行删除操作,删除一个元组。
对项目表进行删除操作。
问题思考:(1)将联系转化为一个关系表,将表的主键和外键相吻合就可以将两个表转化为一个关系表。
数据库概念设计E-R图练习题1.上海可的商业连锁集团需要建立信息系统。
该系统中存在3个实体集,一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。
商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品也可以放在多个商店销售,每个商店销售的一种商品有月销售量;商店与职工之间存在“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和工资。
试画出E-R 图。
实体型:商店(商店编号,商店名,地址)商品(商品号,商品名,规格,单价)职工(职工编号,姓名,性别,业绩)关系模型:商店(商店编号,商店名,地址)商品(商品号,商品名,规格,单价)职工(职工编号,姓名,性别,业绩,商店编号,工资,聘期)销售(商店编号,商品号,月销售量)2.某集团公司需要建立一个数据库存储以下信息:(1).该集团公司由多个工厂组成,每个工厂具有厂名和厂长名两个属性;一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和电话。
(2).一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种。
(3).一个车间生产多种产品,产品有产品号和价格。
(4).一个车间生产多种零件,一个零件也可能由多个车间制造。
零件有零件号、重量和价格。
(5).一个产品由多种零件组成,一种零件也可装配出多种产品。
(6).产品与零件均分类存贮在特定仓库中。
(7).厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
实体型:工厂(厂名、厂长名、厂址、接待电话)车间(车间号、车间主任姓名、地址、电话)工人(职工号、姓名、年龄、性别、工种)仓库(仓库号、仓库主任号、电话地址)零件(零件号、重量、价格)产品(产品号、价格)关系模型:工厂(厂名、厂长名、厂址、接待电话)车间(车间号、车间主任姓名、地址、电话、厂名)工人(职工号、姓名、年龄、性别、工种、车间号)仓库(仓库号、仓库主任号、电话地址、厂名)零件(零件号、重量、价格)产品(产品号、价格、车间号)生产(车间号、零件号)装配(零件号、产品号)零件存放(零件号、仓库号、)产品存放(产品号、仓库号)3. Company资料库中纪录某家公司员工、部门与计划等资料。
通过E-R图设计关系数据模型一、实训目的1.理解E-R图的三要素,会根据语义,绘制E-R图。
2.理解概念模型的意义,掌握关系模型的概念及表示方式。
3.会将E-R图转化为关系模式。
(表)4.会实现E-R图向逻辑结构图的转换。
能写出相应的数据库结构(关系模式)5.会标注出关系模式中的主、外键。
6. 会使word绘制E-R图, 会用visio绘制E-R图二、实训设备及环境1.奔腾计算机 2、WINXP操作系统 3、WORE2003三、实训题目通过E-R图设计关系数据模型四、实训过程概述1. 绘制出各实体属性E-R图2.根据任务1题中的描述画出各实体间的E-R图3.在任务2的基础上,去掉重复的实体,合并画出全局E-R图,要标注实体间的联系4. 根据任务2,画出所有实体间的逻辑结构5.在任务4的基础上,合并相同的实体,画出完整的逻辑结构图6. 依据任务5,写出所有的关系模式,并标注(写出)各关系模式的主、外键五、实训结果及分析(在A4的报告纸中,需写出每个任务的题目及完成的结果)(1)任务1:根据实体属性绘制出E-R图(2)任务2:根据题1的实体属性绘制出实体间的E-R图(3)任务3:根据实体间的E-R图,再去掉重复的实体画出全局的E-R图,同时标出各实体间的联系。
(4)任务4:根据实体间的E-R图画出实体间的逻辑结构(5)任务5:根据实体间的逻辑结构,去掉重复的实体,再画出所有的逻辑结构(6)任务6:根据所有的逻辑结构写出所有的关系模式,并写出主、外键任务1:绘制出各实体属性E-R图\任务2: 根据任务1题中的描述画出各实体间的E-R图任务3: 在任务2的基础上,去掉重复的实体,合并画出全局E-R 图,要标注实体间的联系任务4: 根据任务2,画出所有实体间的逻辑结构任务5:在任务4的基础上,合并相同的实体,画出完整的逻辑结构图任务6:依据任务5,写出所有的关系模式,并标注(写出)各关系模式的主、外键学生(学号、姓名、性别、出生年月、出生地、电话、入学总分)主键:学号班级(班号、班名、人数、学期、班主任、备注)主键:班号系部(系编号、系名、系主任)主键:系编号专业(专业号、专业名、简介)主键:专业号教师(教师号、姓名、职称、邮箱)主键:教师号课程(课程编号、课程名、学时、学分、开设学期)主键:课程编号教材(教材编号、教材名、价格、作者、简介、类别)主键:教材编号教室(教室编号、地点、容量、多媒体否)主键:教室编号选课(学号、课程编号、分数、学期、学年)主键:教师号+班级号外键:学号、课程编号任课(教师号、课程编号、学期、学年,评教)主键:教师号+课程编号外键:教师号、班级号教学(教师号、课程编号、学期、学年、考试)主键:班级号+课程编号外键:教师号、课程编号班级(班级号、课程编号、学期、学年、时间)主键:班级号、课程编号实训心得体会通过这次实训,我掌握了E-R图的三要素、如何使用绘图工具、根据要求画E-R图。
0、试述采用E-R 方法进行数据库概念设计的过程。
答:采用E-R 方法进行数据库概念设计,可以分成3步进行:首先设计局部E-R 模式,然后把各局部E-R 模式综合成一个全局的E-R 模式,最后对全局E-R 模式进行优化,得到最终的E-R 模式,即概念模式。
1、某大学实现学分制,学生可根据自己情况选课。
每名学生可同时选修多门课程,每门课程可由多位教师主讲;每位教师可讲授多门课程。
其不完整的E-R 图如图1所示。
(1) 指出学生与课程的联系类型。
(2) 指出课程与教师的联系类型。
(3) 若每名学生有一位教师指导,每个教师指导多名学生,则学生与教师是如何联系? (4) 在原E-R 图上补画教师与学生的联系,并完善E-R 图。
答: (1) 学生与课程联系类型是多对多联系。
(2) 课程与教师的联系类型是多对多联系。
(3) 学生与教师的联系类型是一对多联系。
(4) 完善本题E-R 图的结果如图2所示。
答:本题的E-R 图转换为如下的关系模式: 单位(单位号,地址,电话)职工(职工号,姓名,性别,年龄,单位号)(1) 职工的信息:职工号、姓名、地址和所在部门。
(2) 部门的信息:部门所有职工、部门名、经理和销售的产品。
(3) 产品的信息:产品名、制造商、价格、型号及产品的内部编号。
(4) 制造商的信息:制造商名称、地址、生产的产品名和价格。
试画出这个数据库的E-R 图。
答:本题对应的E-R 图如图 4所示。
4、某医院病房计算机管理中心需要如下信息: 科室:科名、科地址、科电话、医生姓名 病房:病房号、床位号、所属科室名医生:姓名、职称、所属科室名、年龄、工作证号 病人:病历号、姓名、性别、诊断、主管医生、病房号其中,一个科室有多少个病房、多少个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
图4完成如下设计: (1) 设计该计算机管理系统的E-R 图 (2) 将该E-R 图转换为关系模式结构。
《数据库原理及应用》习题一、简答题1、什么是数据库管理系统?一种负责数据库的建立、操作、管理和维护的软件系统。
2、数据库系统有哪几种模式?分别用来描述什么?(1)外模式是用户的数据视图,用来描述数据的局部逻辑结构,是模式的子集。
(2)模式是所有用户的公共数据视图,用来描述数据库中全体数据的全局逻辑结构和特征。
(3)内模式又称存储模式,描述数据的物理结构及存储方式3、什么是事务?事务有哪些特征?答:所谓事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。
事务的特征:原子性、一致性、隔离性、持续性。
4、POWER BUILDER中事务对象有何作用?答:PowerBuider的事务对象是应用程序与数据库之间进行通信的桥梁,在应用程序初启时,系统自动创一个为SQLCA(SQL Communication Area, SQL通讯区)的全局事务对象,该对象在应用程序的任何地方都可以访问应用程序与数据库的所有通信都需要通过事务对象来完成,除了直接使用系统的缺省事务对SQLCA外,开发人员也可以创建自己的事务对象。
5、SQL SERVER中INSERTED表和DELETED表有何用?答:触发器中用到两种特殊的表:删除表和插入表触发器中使用名为“deleted"和“inserted"来参照这些表;删除表存储受DELTE和UPDATE语句影响的行的副本当执行DELETE或UPDATE语句时,行从触发器表中删除并传递到删除表中。
删除表和触发器表通常没有共有的行。
插入表存储受INSERT和UPDA TE语句影响的行的副本当执行一NSERT 或UPDA T语句时,新行同时增加到插入表和触发器表中。
插入表中的行是触发器表中新行的副本可使用删除表和插入表中的行来参照相关表中的行,或测试被删除或插入行中的值。
6、数据库系统由哪几部分构成?答:数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
姓名:庞茗月学号:2017230593综合题(1)某商场可以为顾客办理会员卡,每个顾客只能办理一张会员卡,顾客信息包括顾客姓名、地址、电话、身份证号,会员卡信息包括号码、等级、积分,给出该系统的E-R图。
(2)按照下列说明修改题(1)中的要求,分别给出相应的E-R图:①顾客具有多个地址和多个电话号码,地址包括省、市、区、街道,电话号码包括区号、号码;②顾客具有多个地址,每个地址具有多个电话号码,地址包括省、市、区、街道,电话号码包括区号、号码。
(3)某数据库记录乐队、成员和歌迷的信息,乐队包括名称、多个成员、一个队长,队长也是乐队的成员,成员包括名字、性别,歌迷包括名字、性别、喜欢的乐队、喜欢的成员。
①画出基本的E-R图;②修改E-R图,使之能够表示成员在乐队的工作记录,包括进入乐队时间以及离开乐队时间。
(4)考虑某个IT公司的数据库信息:①部门具有部门编号、部门名称、办公地点等属性;②部门员工具有员工编号、姓名、级别等属性,员工只在一个部门工作;③每个部门有唯一一个部门员工作为部门经理;④实习生具有实习编号、姓名、年龄等属性,只在一个部门实习;⑤项目具有项目编号、项目名称、开始日期、结束日期等属性;⑥每个项目由一名员工负责,由多名员工、实习生参与;⑦一名员工只负责一个项目,可以参与多个项目,在每个项目具有工作时间比;⑧每个实习生只参与一个项目。
画出E-R图,并将E-R图转换为关系模型(包括关系名、属性名、码和完整性约束条件)。
关系模型为:部门(编号,名称,办公地点,经理编号),部门的经理编号参照员工的编号;员工(编号,姓名,级别,部门编号),员工的部门编号参照部门的编号;实习生(编号,姓名,年龄,部门编号),实习生的部门编号参照部门的编号;项目(编号,名称,开始日期,结束日期,负责人编号),项目的负责人编号参照员工的编号;实习参与(实习生编号,项目编号),实习生编号、项目编号分别参照实习生的编号、项目的编号;员工参与(员工编号,项目编号,时间比),员工编号、项目编号分别参照员工的编号、项目的编号,且一个员工的所有时间比相加不超过100%。
E-R事例1、设某商业集团的仓库管理系统数据库有三个实体集。
一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。
公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。
(1)试画出ER图,并在图上注明属性、联系的类型。
(2)将ER图转换成关系模型,并注明主键和外键。
解:(1) ER图如图7.2所示。
图7.2(2)这个ER图可转换3个关系模式:公司(公司编号,公司名,地址)仓库(仓库编号,仓库名,地址,公司编号)职工(职工编号,姓名,性别,仓库编号,聘期,工资)2、设某商业集团的商品供应管理系统数据库有三个实体集。
一是“商品”实体集,属性有商品号、商品名、规格、单价等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“供应商”实体集,属性有供应商编号、供应商名、地址等。
供应商与商品之间存在“供应”联系,每个供应商可供应多种商品,每种商品可向多个供应商订购,每个供应商供应每种商品有个月供应量;商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品可在多个商店销售,每个商店销售每种商品有个月计划数。
试画出反映上述问题的ER图,并将其转换成关系模型。
解:ER图如图7.3所示。
图7.3(2)这个ER图可转换5个关系模式:供应商(供应商编号,供应商名,地址)商店(商店号,商店名,地址)商品(商品号,商品名,规格,单价)供应(供应商编号,商品号,月供应量)销售(商店号,商品号,月计划数)3、银行储蓄业务管理系统数据库中涉及到储户、存款、取款等信息。
试设计ER模型。
解:储蓄业务主要是存款、取款业务,可设计如图7.4所示的ER图。
图7.44、超市管理系统。
该超市公司的业务管理规则如下:⑴该超市公司有若干仓库,若干连锁商店,供应若干商品。
第2章习题解答〖2.1〗定义并解释术语:实体实体型实体集属性码实体联系图(E-R图)数据模型答:①实体:现实世界中存在的可以相互区分的事物或概念称为实体。
②实体型:现实世界中,对具有相同性质、服从相同规则的一类事物(或概念,即实体)的抽象称为实体型。
③实体集:具有相同特征或能用同样特征描述的实体的集合称为实体集。
④属性:属性为实体的某一方面特征的抽象表示。
⑤码:也称为关键字,能够唯一标识一个实体。
⑥实体联系图(E-R图):实体联系方法(E-R图法)是用来描述现实世界中概念模型的一种著名方法,提供了表示实体集、属性和联系的方法。
⑦数据模型:一组严格定义的概念集合。
这些概念精确地描述了系统的数据结构、数据操作和数据完整性约束条件。
〖2.2〗试述数据模型的概念、数据模型的作用和数据模型的三个要素。
答:①数据模型是一组严格定义的概念集合,这些概念精确地描述了系统的数据结构、数据操作和数据完整性约束条件。
数据模型是通过概念模型数据化处理得到的。
②数据库是根据数据模型建立的,因而数据模型是数据库系统的基础。
③数据模型的三要素是数据结构、数据操作和完整性约束条件。
数据结构是所研究的对象类型的集合;数据操作是指对数据库中各种数据对象允许执行的操作集合;数据约束条件是一组数据完整性规则的集合。
〖2.3〗试述信息模型的作用。
答:信息模型是对信息世界的管理对象、属性及联系等信息的描述形式。
信息模型不依赖于计算机及DBMS,它是现实世界的真实而全面的反映。
信息模型数据化处理后可得到数据模型。
〖2.4〗试给出三个实际部门的E-R图,要求实体型之间具有一对一、一对多、多对多各种不同的联系。
答:见图。
题2.4 E-R图图中:部门和负责人间的联系是一对一的联系;一个学生可以借阅多本书,一本书只能一个人借,学生和借阅间的联系为一对多的联系;一个学生可以参加多个社会团体,一个社会团体有多个学生参加,学生和社会团体间的联系为多对多的联系。
10 .试给出3个实际部门的E —R图,要求实体型之间具有一对一、一对多、多对多
各种不同的联系。
答:
E 一R图,要求有三个实体型,而且3个实体型之间有多
3个实体型之间的多对多联系和三个实体型两两之间的三个多对多联系等价
吗
3个实体型之间的多对多联系和
它们拥有不同的语义。
3个实体型两两之间的三个多对多联系如下图所示。
12.学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每
人各带若干研究生;每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。
请用E 一
R图画出此学校的概念模型。
答:
11 •试给出一个实际部门的对
多联系。
为什么
答:
3个实体型两两之间的3个多对多联系是不等价,因为
祷
13.某工厂生产若干产品,
这些零件由不同的原材料制
成,不同零件所用的材料可以相同。
这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。
请用 E 一R图画出此工厂产品、
零件、材料、仓库的概念模型。
答:
14.试述层次模型的概念,举出三个层次模型的实例。
答:
(I )教员学生层次数据库模型
每种产品由不同的零件组成,有的零件可用在不同的产品上。
I
>»研穿爾勺I
Itff畫拓I I学号]ft若]皓]
It'til
I 职工号I 甘吿I研樂疗时I
(2 )行政机构层次数据库模型
18 .现有一局部应用,包括两个实体: 请读者
自己设计适当的属性,画出性名、码和完整性
约束条件)答:
罔为:
关系模型为:作者(作者号,姓名,年龄,性别,电话,地址)出版社(出版社号,名称, 地址,联系电
话)出版(作者号,出版社号,书的数量)出版关系的主码作者号,出版社号分别参照作者关系的主码作
者号和出版社关系的主码出版社号。
19 •请设计一个图书馆数据库,此数据库中对每个借阅者保存读者记录,包括:读者号, 姓名,地址,性
别,年龄,单位。
对每本书存有:书号,书名,作者,出版社。
对每本被
辄办驚也也1
1斡空1
r
1
口咸HL
枸
I IKV ]堆再I哥凭丽「I
“出版社”和“作者”,这两个实体是多对多的联系, E
一R图,再将其转换为关系模型(包括关系名、属
年站电
怖/:号
fl A
借出的书存有读者号、借出日期和应还日期。
要求:给出 模型。
答:
关系模型为:读者(读者号,姓名,地址,性别书(书号,书名,作者,出版社)借书(读 者号,书号,借出日期,年龄,单位)应还日期)
E 一 R 图,再将其转换为关系 号,。