数据库
首页
题库首页
在线模考
取消
取消
hot
热门搜索
一级建造师块
热
消防工程师块
热
初级会计师
证券从业
电气工程师
银行招聘
教师资格块
热
基金从业
更多热门>>
简答题
(10分)假定我们要建立一个航空数据库,存储如下信息:
·每个机场有机场编号、所在城市;
·每个航班有航班编号、起飞时间、飞行时间;
·飞机有飞机编号、型号、载客人数;
·飞行员有飞行员编号、姓名;
·每个航班有唯一的起飞机场和降落机场,每个机场会有多个航班起降
·每架飞机可飞行多个航班,一个航班可以由多架飞机执行飞行任务;
·每位飞行员只驾驶一架飞机,每架飞机可以由多位驾驶员来驾驶
其中带下划线的属性是实体的标识属性。
(1)请根据以上描述,画出相应的ER图。
(2)将上面的ER图转换为满足3NF的关系模式。
参考答案
暂无
解析:
(1)【解题思路】
ER图的设计原则:在设计ER图时,首先应根据需求分析,确认实体、属性和联系这3种ER图的基本要素。在ER图中,分别用矩形框表示实体,椭圆表示属性,菱形框表示联系。
①实体:把客观存在并且可以相互区别的事物称为实体。实体可以是实际事物,也可以是抽象事物,如机场、航班、飞机、飞行员等。
②属性:描述实体的特性称为属性,如航班的航班编号、起飞时间、飞行时间等。能唯一标识实体的属性作为主属性,在ER图中用下划线标识。
③联系:联系是实体问有意义的相互作用,即实体间存在的关联。一般用动词作为联系的名字,如起降、驾驶、飞行等,能表示实体之间的关系。
本题中每个航班有唯一的起飞机场和降落机场,每个机场有多个航班起降,所以机场实体和航班实体之间是一对多的联系;每架飞机可飞行多个航班,一个航班可以由多架飞机执行飞行任务,所以航班实体和飞机实体之间是多对多联系;每位飞行员只驾驶一架飞机,每架飞机可以由多位飞行员来驾驶,所以飞机实体和飞行员实体之间是一对多联系。
【参考答案】
(2)【解题思路】
在将ER图向关系模式转换时规则如下:
①1:1(一对一)联系。
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的码构成;关系模式的码由两个实体中的任意一个码构成。
方法二:联系与一端的实体的关系模式合并,将另一实体的码和联系的属性加人到实体的关系模式内,码不变。
②1:m(一对多)联系。
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的码构成;模式的码由m端实体的主码组成。
方法二:与m端的实体的关系模式合并,即将一端关系的码和联系的属性加入到m端的实体的关系模式内,码不变。
③m:n(多对多)联系。
只有一个方法:联系转换成独立的关系模式,模式的属性由联系本身的属性及两个实体的码构成,关系模式的码由两端实体的主码组合而成。
关系模式满足3NF,则必须满足关系模式中每一个非主属性既不部分依赖于码也不传递依赖于码。简而言之,第三范式就是消除主属性对码的部分和传递函数依赖。
【参考答案】
由于题目要求满足3NF范式,ER图向关系模式转换采用方法一,转换后的关系模式名称采用实体名或联系名。本题中有两个一对多、一个多对多联系。对于每一个一对多联系,都与多端的实体的关系模式合并,即将一端关系的码和联系的属性加入到多端的实体的关系模式内,码不变。对于多对多联系来说,只能单独转换成一个新的关系模式,转换后的关系模式的属性由联系本身的属性及两个实体的主码构成,转换后的关系模式的主码由两端实体的主码组合而成。
转换后的关系模式:
机场(
机场编号
,所在城市)。其中,机场编号是主码;
航班(
航班编号
,起飞时间,飞行时间,起飞机场编号,降落机场编号)。
其中,航班编号是主码,起飞机场编号、降落机场编号是外码;
飞机(
飞机编号
,型号,载客人数)。其中,飞机编号是主码;
飞行(
飞机编号
,
航班编号
)。其中,飞机编号、航班编号共同作为主码,飞机编号、航班编号同样也是外码;
飞行员(
飞行员编号
,姓名,飞机编号)。其中,飞行员编号是主码,飞机编号是外码。
点击查看答案
进入在线模考
你可能喜欢
简答题
(10分)设在SQL Server 2008某数据库中有汽车表和销售表,表的定义如下:
点击查看答案
进入在线模考
简答题
(10分)在SQL Server 2008的数据库中存在如下两张关系表:
学生表(学号,姓名,性别,身份证号,系所号),学号为主码
系所表(系所号,系所名,系所简称),系所号为主码
在数据库中执行如下T-SQL代码:
(1)执行过程中发现速度比较缓慢,为了解决性能问题,需在功能不变的情况下,将此TSQL代码改为一条SQL语句:
s-选择 c-选择 (术)FROM学生表JOIN系所表ON学生表.系所号=系所表.系所号WHERE系所名LIKE´%电%´;
请分析此改变是否可以提高性能,并给出原因。
(2)学生表的身份证号和姓名上建有一个复合索引,索引建立语句为
CREATEINDEX idx_身份证号_姓名ON学生表(身份证号,姓名)
请指出如下两个查询语句能否使用此索引并说明原因。
s-选择 FROM学生表WHERE身份证号=´123456789012345678´;
s-选择 *FROM学生表WHERE姓名=´小明´;
点击查看答案
进入在线模考
单选题
论证是否具备数据库应用系统开发所需的人力资源,这属于数据库应用系统的( )。
A.操作可行性分析
B.经济可行性分析
C.技术可行性分析
D.开发方案可行性分析
点击查看答案
进入在线模考
延伸阅读