测试4-数据库设计
选择题
-
下列关于数据库运行和维护的叙述中,正确的是D。
A .只要数据库正式投入运行,就标志着数据库设计工作的结束
B .数据库的维护工作就是维持数据库系统的正常运行
C .数据库的维护工作就是发现错误,修改错误
D .数据库正式投入运行标志着数据库运行和维护工作的开始
-
E-R 图是表示概念模型的有效工具之一, E - R 图中的”菱形框”表示的是A
A .联系
B . 实体
C .实体的属性
D .联系的属性
-
要将m:n的两个实体的E-R 图转换成关系模式,可以转换为C关系模式.
A . 1 个
B . 2 个
C . 3 个
D . 4 个
-
数据库设计中, B不参加需求分析工作。
A.系统分析员
B.程序员
C.数据库设计人员
D.用户
-
在数据库设计过程中, D工作离不开用户的参与。
A.设计数据库模式
B.设计数据库外模式
C.设计数据库内模式
D.进行需求分析
-
从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是C 。
A. M端实体的关键字
B. N端实体的关键字
C. M端实体关键字与N端实体关键字组合
D. 重新选取其他属性
-
公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型是 D。
A.多对多
B.一对一
C.多对一
D.一对多
-
若两个实体之间的联系是1 : m ,则实现1 : m 联系的方法是A
A .在“m ”端实体转换的关系中加入“l ”端实体转换关系的码
B .将“m ”端实体转换关系的码加入到“1”端的关系中
C .在两个实体转换的关系中,分别加入另一个关系的码
D .将两个实体转换成一个关系
1:m关系表示,1个实体对应多个实体。
要实现1:m关系,可以在m端实体转换成的关系模式表中,增加l端实体的主键作为外键。
这样在m端实体表的每条记录就可以通过外键,引用l端实体的对应记录。实现1:m映射。
-
从E-R 图导出关系模式时,如果两实体间的联系是m : n ,下列说法中正确的是D。
A .将m 方码和联系的属性纳入n 方的属性中
B .将n 方码和联系的属性纳入m 方的属性中
C .在m 方属性和n 方的属性中均增加一个表示级别的属性
D .增加一个关系表示联系,其中纳入m 方和n 方的码
m:n关系表示两实体之间是多对多的关系。
将m:n关系转换为关系模式时,需要增加一个关系(表)作为中间表:
- 包含m方实体主键作为外键
- 包含n方实体主键作为外键
- 包含表示两者关系的属性
通过这样一个中间关系表,来实现m方和n方在多对多关系中的映射。
-
E-R 图中的联系可以与 实体有关.
A . 0 个
B . 1 个
C . l 个或多个
D .多个
-
当局部E-R 图合并成全局E-R 图时可能出现冲突,B不属于合并冲突的是.
A .属性冲突
B .语法冲突
C .结构冲突
D .命名冲突
E-R图合并时可能出现的冲突主要包括这三种:属性冲突、结构冲突和命名冲突。
-
数据库概念设计的E-R 图中,用属性描述实体的特征,属性在E-R 图中用D 表示。
A .矩形
B .四边形
C .菱形
D .椭圆形
-
在数据库的概念设计中, 最常用的数据模型是D .
A.形象模型
B .物理模型
C. 逻辑模型
D .实体联系模型
在数据库的概念设计阶段,最常用的数据模型是实体联系模型。
实体联系模型用于描述数据库概念模型,指定数据库中的主要数据元素(实体集)和它们之间的联系(关系集)。
实体联系模型步骤:
- 确定数据库涉及到的主要实体类型
- 确定实体之间的关系
- 衍生属性,确定每种类型的属性
- 指定实体和关系集之间的限制
- 规范化实体联系模型
-
E-R 图是数据库设计的工具之一,它适用于建立数据库的 A
A .概念模型
B . 逻辑模型
C .结构模型
D .物理模型
E-R图(Entity-Relationship model)是数据库设计的重要工具之一,用于建立数据库概念模型。
-
数据库需求分析时,数据字典的含义是 D
A .数据库中所涉及的属性和文件的名称集合
B .数据库中所涉及到字母、字符及汉字的集合
C .数据库中所有数据的集合
D .数据库中所涉及的数据流、数据项和文件等描述的集合
简答题
1. 画E-R图并将其转换为适当的关系模型
题目
某IT公司的数据库信息:
①部门具有部门编号、部门名称、办公地点;
②部门员工具有员工编号、姓名、级别,员工只在一个部门工作;
③每个部门有唯一一个部门员工作为部门经理;
④实习生具有实习编号、姓名、年龄,只在一个部门实习;
⑤项目具有项目编号、项目名称、开始日期、结束日期;
⑥每个项目由一名员工负责,由多名员工、实习生参与;
⑦一名员工只负责一个项目,可以参与多个项目,在每个项目具有工作时间;
⑧每个实习生只参与一个项目。
(1)试画出这个数据库的E-R图。
(2)转化为适当的关系模型,并给出关系的主码和外码。
E-R图
关系模型
部门(部门编号,部门名称,办公地点,部门经理)
主码:部门编号
外码:部门经理 -> 员工(员工编号)
员工(员工编号,姓名,级别,部门编号)
主码:员工编号
外码:部门编号 -> 部门(部门编号)
实习生(实习编号,姓名,年龄,部门编号)
主码:实习编号
外码:部门编号 -> 部门(部门编号)
项目(项目编号,项目名称,开始日期,结束日期,员工编号)
主码:项目编号
外码:员工编号 -> 员工(员工编号)
员工项目参与关系(员工编号,项目编号,工作时间)
主码:(员工编号,项目编号)
外码:员工编号 -> 员工(员工编号)
外码:项目编号 -> 项目(项目编号)
2. 画E-R图并将其转换为关系模型
题目
设有一局部应用,包括 3 个实体“科室”,“医生”,“病人”,且有以下事实:每位医生属于且仅属于一个科室;每个科室可以聘用若干医生,对每个医生聘用时存有聘用期限和聘用日期;一个病人可以由不同的医生为其诊断,每个医生可以为若干病人诊治,每次诊断存有就诊日期。设科室的属性包括科室代码,科室名称;医生的属性包括工号,姓名和职称;病人的属性包括病历号、姓名、年龄。
(1)试画出这个数据库的E-R图。
(2)转化为适当的关系模型,并给出关系的主码和外码。
E-R图
关系模型
科室(科室代码,科室名称)
主码:科室代码
医生(工号,姓名,职称,科室代码,聘用日期,聘用期限)
主码:工号
外码:科室代码 -> 科室(科室代码)
病人(病历号,姓名,年龄)
主码:病历号
诊断(病历号,工号,就诊日期)
主码:(病历号,工号)
外码:病历号 -> 病人(病历号)
外码:工号 -> 医生(工号)
聘用(工号,科室代码,聘用日期,聘用期限)
主码:(工号,科室代码)
外码:工号 -> 医生(工号)
外码:科室代码 -> 科室(科室代码)
注意:一个医生可以为若干病人诊断,一个病人可以由不同的医生为其诊断。诊断关系表中存储了每次诊断的信息,包括病历号、医生工号和就诊日期。一个医生可以为多个病人诊断,一个病人也可以由多个医生诊断,因此诊断关系表的主键是(病历号,工号)组合。另外,每个科室可以聘用多个医生,每个医生也可以在多个科室工作,所以聘用关系表的主键是(工号,科室代码)组合。