学年第学期专业计算机科学技术年级本科《数据库原理》试卷卷答案第1页共3页浙江万里学院学年第学期《数据库原理》试卷(4)卷标准答案专业:计算机科学技术层次:本科年级:命题教师:杨爱民一、单项选择题(本大题共20小题,每小题1分,共20分)1.现实世界中事物在某一方面的特性在信息世界中称为(C)A.实体B.实体值C.属性D.信息2.数据的存储结构与数据逻辑结构之间的独立性称为数据的(B)A.结构独立性B.物理独立性C.逻辑独立性D.分布独立性3.应用程序设计的工作开始于数据库设计步骤的(D)A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段4.在关系R中,代数表达式σ34(R)表示(B)A.从R中选择值为3的分量小于第4个分量的元组组成的关系B.从R中选择第3个分量值小于第4个分量的元组组成的关系C.从R中选择第3个分量的值小于4的元组组成的关系D.从R中选择所有元组组成的关系5.为解决“丢失更新”问题,事务在更新一个数据集合前,必须获得对它的(B)A.S锁B.X锁C.S锁和X锁D.S锁或X锁6..在SQL的查询语句中,对应关系代数中“投影”运算的语句是(A)A.SELECTB.FROMC.WHERED.SET7.在数据库设计中,将E-R图转换成关系数据模型的过程属于(B)A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段8.关系代数的五个基本操作可直接转换成元组关系演算表达式,它们是:并、差、投影、选择和(B)A.交B.笛卡尔积C.自然连接D.除法9.SQL语言具有的功能是(B)A.关系规范化,数据操纵,数据控制B.数据定义,数据操纵,数据控制C.数据定义,关系规范化,数据控制D.数据定义,关系规范化,数据操纵10.班长和学生是什么关系(B)A)1:1B)1:MC)M:ND)都不是11.单个用户使用的数据视图的描述称为(A)A.外模式B.概念模式C.内模式D.存储模式12在客户机/服务器体系结构的DBS中,数据库功能分为前端和后端两部分,下列功能属于后端的是(B)A.用户界面B.存取结构C.数据输入D.报表输出13.实体集书店与图书之间具有(B)联系。A)一对一B)一对多C)多对多D)多对一14.现有关系表:医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果,恢复情况)的主码是(A)A)患者编号,医生编号,诊断日期B)医生编号C)诊断日期D)患者编号15.任何一个三目关系都属于(A)A)1NFB)3NFC)BCNFD)4NF16.哪种模式不是数据库的模式(C)A)模式B)外模式C)映像模式D)内模式17.下面哪种数据模型只有一个根结点(B)A)概念B)层次C)关系D)网状18.视图定义是(D)A)一个基表中导出的基表B)一个基表中导出的虚表C)一个或几个基表或视较中导出的基表D)一个或几个基表或视较中导出的虚表19.选择和笛卡尔积的关系运算是(A)A.×和σB.∞和σC.×,和-D.π和∞20.SQL中,下列涉及空值的操作,不正确的是(C)A.AGEISNULLB.AGEISNOTNULLC.AGE=NULLD.NOT(AGEISNULL)二、填空题(本大题共5个空,每空1分,共5分)装订线学年第学期专业计算机科学技术年级本科《数据库原理》试卷卷答案第2页共3页1.事务的特性包括:(原子性)、一致性、隔离性、和持久性。2.SQL数据库中的表,可以是基本表,也可以是(视图)。3.关系数据模型的数据完整性规则包括(实体)完整性、(参照)完整性和用户定义的完整性。4.E-R方法的三要素是:实体、(属性)和联系。三.简答题(本大题共5小题,每小题3分,共15分)1.为什么视图被称为虚表?基本表与视图的区别是什么?因为数据库中只存储有关视图的定义而不存储视图所对应的数据,这些数据仍存放在导出视图的基本表中,所以视图被称为虚表。基本表是实际独立存放在数据库中的表,是实表。2.简述数据库设计过程。1)需求分析2)概念3)逻辑4)物理5)数据库实施6)数据库维护3.数据库并发操作主要解决哪三个问题?如何保证并行操作的可串行性。数据库并发操作主要解决以下三个问题。1)丢失更新问题2)数据不一致分析问题3)读“脏”数据问题对任何数据集合进行读写操作之前,事务首先应获得对此数据集合的封锁,在释放一个封锁之后,事务不再获得任何其他封锁。4.在关系数据库中能完全消除数据冗余吗?不能。要实现关系数据库中表与表之间的联系,必须通过公共属性来完成,这些公共属性可能是一个表的主键,也可能是另一个表的外键,有相应的参照完整性规则来保证表之间的联系。所以关系数据库中存在数据冗余,但能控制数据的冗余度。5.设教学数据库有三个关系:学生S(S#,SNAME,AGE,SEX)学习SC(S#,C#,GRADE)课程C(C#,CNAME,TEACHER)写出下列代数表达式和元组表达式的汉语含义。(2)πS#(σTEACHER='LIU'(SCC))(2)检索选修课程包含LIU老师所授课程的学生学号。四、程序设计题(本大题共2小题,每小题20分,共40分)1.对于教学数据库的三个基本表学生student(sno,sname,sex,sage,sdept)学习sc(sno,cno,grade)课程course(cno,cname,cpno,ccredit)试用SQL语句表示:下列语句。(1)有不姓刘的同学的学号和姓名selectsno,snamefromstudentwheresnamenotlike'刘%'(2)查询课程名是数据库原理的课程号和学分selectcno,ccreditfromcoursewherecname='数据库原理'(3)查询所有选修了1号课程的同学的姓名selectsnamefromstudentwherestudent.snoin(selectsc.snofromscwherecno='1')(4)查询比计算机系(CS)所有年龄都小的其它系学生select*fromstudentwheresageall(selectsagefromstudentwheresdept='CS')(5)查询至少比计算机系(CS)中1个同学龄都大的同学名单(不含计算机系)select*fromstudentwheresageany(selectsagefromstudentwheresdept='CS')andsdeptnotlike'CS'2.对于学生选课关系,其关系模式为:学生(学号,姓名,年龄,所在系);课程(课程名,课程号,先行课);选课(学号,课程号,成绩)。用关系代数完成以下查询:1)求学过的数据库课程的学生的姓名和学号。2)求同时学过数据库和数据结构的学生的姓名和学号。3)求没有学过数据库课程的学生学号。4)求学过的“数据库”的先行课的学生学号1)∏姓名,学号(σ课程名=‘数据库’(学生∞选课∞课程))学年第学期专业计算机科学技术年级本科《数据库原理》试卷卷答案第3页共3页2)∏姓名,学号(σ课程名=‘数据库’(学生∞选课∞课程))∩∏姓名,学号(σ课程名=‘数据结构’(学生∞选课∞课程))3)∏姓名,学号(学生)-∏姓名,学号(σ课程名=‘数据库’(学生∞选课∞课程))4)∏学号(∏课程号,学号(选课)∞∏先行课号(σ课程名=‘数据库’(选课))五、分析题(本大题共20分)1.东方货运公司数据库的样本数据如下。表名称:卡车车号货运站编号类型总行程购入日期1001501159002.711/06/901002502254523.811/08/901003503232116.609/29/91100450423256.901/14/92表名称:货运站货运编号地址电话经理501北京市东城区花市大街111号010—67301234何东海502北京市海淀花园路101号010—64248892吴明君表名称:型号类型汽车型号1DJS1302DLS121根据数据库的表结构和内容:a.指出每个表的主码和外码。如果没有外码,则写“无”。b.卡车表存在实体完整性和参照完整性吗?请详细说明。c.具体说明卡车表与运货站表之间存在着什么关系?d.卡车表中包含多少个实体?答:a.表名称主码外码卡车车号货运站编号,类型货运站货运站编号无型号类型无b.卡车表中存在实体完整性和参照完整性。实体完整性:在主码车号的这列中不存在空值;参照完整性:外码“货运站编号”这列中的值都是货运站表中“货运站编号”这列中的值,外码“类型”这列中的值都是型号表中“型号”这列中的值。c.货运站表和卡车表之间存在着一对多的关系,即每一个货运站可以有多辆车。如,样本数据中货运站501有两辆车:车号为1001和1003;货运站502有两辆车:车号为1002和1004。d.卡车表中包括4个实体,即表中每个元组(行)对应一个实体,每个实体就是一辆车。