还剩16页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
2004-2005学年第二学期期末考试D2002级计算机科学与技术专业《数据库原理与应用》课程试题
一、选择题(15分,每空1分)1.数据库系统中,物理数据独立性(physicaldataindependence)是指____A.数据库与数据库管理系统的相互独立B.应用程序与DBMS的相互独立C.应用程序与存储在磁盘上数据库的物理模式是相互独立的D.应用程序与数据库中数据的逻辑结构相互独立2.数据库系统的特点是____、数据独立、减少数据冗余、避免数据不一致和加强了数据保护A.数据共享B.数据存储C.数据应用D.数据保密3.数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作的数据库语言称为____A.数据定义语言(DDL)B.数据管理语言C.数据操纵语言(DML)D.数据控制语言4.在关系代数的专门关系运算中,从表中取出满足条件的属性的操作称为
①B;从表中选出满足某种条件的元组的操作称为
②A;将两个关系中具有共同属性值的元组连接到一起构成新表的操作称为
③CA.选择B.投影C.连接D.扫描5.关系模型中,一个候选码____A.可由多个任意属性组成B.至多由一个属性组成C.可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成D.必须由多个属性组成6.SQL语言是____语言A.层次数据库B.网络数据库C.关系数据库D.非数据库7.数据库中只存放视图的________A.操作B.对应的数据C.定义D.限制8.关系数据库规范化是为解决关系数据库中____问题而引入的A.数据冗余B.提高查询速度C.减少数据操作的复杂性D.保证数据的安全性和完整性9.数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的________A.可靠性B.一致性C.完整性D.安全性10.若事务T对数据对象A加上S锁,则________A.事务T可以读A和修改A,其它事务只能再对A加S锁,而不能加X锁B.事务T可以读A但不能修改A,其它事务能对A加S锁和X锁C.事务T可以读A但不能修改A,其它事务只能再对A加S锁,而不能加X锁D.事务T可以读A和修改A,其它事务能对A加S锁和X锁11.事务的原子性是指________A.事务中包括的所有操作要么都做,要么都不做B.事务一旦提交,对数据库的改变是永久的C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的D.事务必须是使数据库从一个一致性状态变到另一个一致性状态12.数据库中的封锁机制(locks)是____的主要方法A.完整性B.安全性C.并发控制D.恢复13.对并发操作若不加以控制,可能会带来数据的____问题A.不安全B.死锁C.死机D.不一致
二、填空题(15分,每空1分)1.传统的集合“并、交、差”运算施加于两个关系时,这两个关系的
①属性个数必须相等,
②相对应的属性值必须取自同一个域2.指出下列缩写的含义DBMS
①DBMS数据库管理系统、DBA
②DBA数据库管理员3.在关系A(S,SN,D)和B(D,CN,NM)中,A的主码是S,B的主码是D,则D在S中称为__外码__4.数据冗余可能导致的问题有
①浪费存储空间及修改麻烦和
②5.数据库在运行过程中可能产生的故障有
①Transactionfailure
②Systemcrash
③Diskfailure
三、判断题(10分,每小题5分)判断下述结论是否正确,对正确的结论加以证明,对错误的结论说明原因(或举一反例进行说明)1.view可串行化的调度schedule一定也是冲突conflict可串行化的调度结论错误例如581页Schedule9isaviewserializableschedulebutisnotaconflictserializableschedule.2.在确定关系的候选码时,如果属性X在函数依赖的左右都不出现,则候选码中必不包含X结论错误在确定关系的候选码时,如果属性X在函数依赖的左右都不出现,则候选码中必包含X,因为只有X能够函数决定X
四、简答题2.什么是关系的外码?并举例说明答关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外部码,也称外码学生数据库中有关系STUDENT(SNO,SNAME,SEX,AGE)、关系COURSE(CNO,CNAME)和关系SC(SNO,CNO,GRADE),SC关系中SNO是外码,其参照关系是STUDENT;CNO也是外码,其参照关系是COURSE3.如何通过定义视图和存取控制保证数据库的安全性?并用SQL语言举例说明视图能够对机密数据提供安全保护有了视图机制,就可以在设计数据库应用系统时,对不同的用户定义不同的视图,使机密数据不出现在不应看到这些数据的用户视图上,这样就由视图的机制自动提供了对机密数据的安全保护功能例如Student表涉及三个系的学生数据,可以在其上定义三个视图,每个视图只包含一个系的学生数据,并只允许每个系的学生查询自己所在系的学生视图例建立信息系学生的视图CREATEVIEWIS_StudentASSELECTSnoSnameSageFROMStudentWHERESdept=IS;数据库的安全性是指保护数据库,防止不合法的使用所造成的数据泄露和破坏数据库系统中保证数据安全性的主要措施是进行存取控制,即规定不同用户对于不同数据对象所允许执行的操作,并控制各用户只能存取他有权存取的数据不同的用户对不同的数据应具有何种操作权力,是由DBA和表的建立者(即表的属主)根据具体情况决定的,SQL语言则为DBA和表的属主定义和回收这种权力提供了手段例把查询Student表权限授给用户U1GRANTSELECTONTABLEStudentTOU1;五应用题
1.已知RUFU={ABCDE}F={ABCCDDE}R的一个分解={R1ABC,R2CD,R3DE}判断是否为无损连接?
1.构造一个初始二维表如下图
2.运用函数依赖后,二维表最终变为如下表所示ABCDER1a1a2a3R2a3a4R3a4a5ABCDER1a1a2a3a4a5R2a3a4a5R3a4a5因此该分解是无损连接的2三个表即学生表S、课程表C和学生选课表SC,它们的结构如下S(S#SNSEXAGEDEPT)C(C#CN)SC(S#C#GRADE)其中S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE.为成绩1检索所有比“王华”年龄大的学生姓名、年龄和性别
(1)SELECTSNAGESEXFROMSWHEREAGESELECTAGEFROMSWHERESN=’王华’2检索选修课程“C2”的学生中成绩最高的学生的学号
(2)SELECTSFROMSCWHEREC=’C2’ANDGRADE=SELECTMAXGRADEFROMSCWHEREC=’C2’3检索学生姓名及其所选修课程的课程号和成绩
(3)SELECTSNCGRADEFROMSSCWHERES.S=SC.S4检索选修四门课程的学生总成绩SELECTSSUMGRADEFROMSCGROUPBYSHAVINGCOUNTC=43由Armstrong公理证明合并规则若X-ZX-Y则X-YZ证明因为XY所以XXY(增广律)因为XZ所以XYZY(增广律)所以XYZ(传递律)
六、综合题
1..设工厂里有一个记录职工每天日产量的关系模式R(职工编号,日期,日产量,车间编号,车间主任)如果规定每个职工每天只有一个日产量;每个职工只能隶属于一个车间;每个车间只有一个车间主任试回答下列问题⑴根据上述规定,写出模式R的基本FD和关键码;⑵说明R不是2NF的理由,并把R分解成2NF模式集;⑶进而再分解成3NF模式集,并说明理由1.解
①基本的FD有3个(职工编号,日期)→日产量职工编号→车间编号车间编号→车间主任R的关键码为(职工编号,日期)
②R中有两个这样的FD(职工编号,日期)→(车间编号,车间主任)职工编号→(车间编号,车间主任)可见前一个FD是局部依赖,所以R不是2NF模式R应分解成R1(职工编号,车间编号,车间主任)R2(职工编号,日期,日产量)此处,R1和R2都是2NF模式
③R2已是3NF模式在R1中,存在两个FD职工编号→车间编号车间编号→车间主任因此,“职工编号→车间主任”是一个传递依赖,R1不是3NF模式R1应分解成R11(职工编号,车间编号)R12(车间编号,车间主任)这样,ρ={R11,R12,R2}是一个3NF模式集2.某学员为公安局的车辆信息管理系统设计了数据库的ER图,对车辆、车主、驾驶员、制造商、保险公司、警察、车辆违章和车辆事故等信息进行了管理,其ER图如下所示该ER图有7个实体类型,其结构如下制造商(制造商编号,名称,地址)交通管理大队(大队编号,地址,区域,电话)警察(警号,姓名,性别,出生年月)车主(身份证号,姓名,地址,电话)车辆(车辆牌号,型号,发动机号,座位数,登记日期)驾驶员(驾驶证号,姓名,性别,地址,准驾车型,发证日期)保险公司(保险公司编号,名称,地址,电话)该ER图有8个联系类型,其中5个是1:N联系,1个是M:N联系,2个是M:N:P联系其联系的属性如下违章(违章编号,时间,地点,违章行为,处理结果)事故(事故编号,时间,地点,事故简要,处理结果)被盗(被盗编号,被盗时间,被盗地点,找回时间,找回地点)试将上述ER图转换成关系模型写出关系模式集,并用下划线和波浪线标识出每个模式的主键和外键在上述数据库中,写出主键和外键的总数这两个数字解
①根据ER图和转换规则,7个实体类型转换成7个关系模式,1个M:N联系转换成1个关系模式,2个M:N:P联系转换成2个关系模式因此,该ER图可转换成10个关系模式,如下制造商(制造商编号,名称,地址)交通管理大队(大队编号,地址,区域,电话)警察(警号,姓名,性别,出生年月,大队编号)车主(身份证号,姓名,地址,电话)车辆(车辆牌号,型号,发动机号,座位数,登记日期,制造商编号,保险公司编号,车主身份证号)驾驶员(驾驶证号,姓名,性别,地址,准驾车型,发证日期,保险公司编号)保险公司(保险公司编号,名称,地址,电话)违章(违章编号,时间,地点,违章行为,处理结果,车辆牌号,驾驶证号,警号)事故(事故编号,时间,地点,事故简要,处理结果,车辆牌号,驾驶证号,警号)被盗(被盗编号,被盗时间,被盗地点,找回时间,找回地点,车主身份证号,车辆牌号)
②在上述数据库中,主键的总数为10个,外键的总数为13个2003-2004学年第二学期期末考试2001级《数据库系统概论》试题C
一、选择题(20分,每小题2分)1.数据库系统与文件系统的主要区别是____A.数据库系统复杂,而文件系统简单B.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决C.二文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件D.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量2.同一个关系模型的任意两个元组值____A.不能全同B.可全同C.必须全同D.以上都不是3.自然连接是构成新关系的有效方法一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的____A.元组B.行C.记录D.属性4.SQL语言具有两种使用方式,分别称为交互式SQL和____A.提示式SQLB.多用户SQLC.嵌入式SQLD.解释式SQL5.关系规范化中的删除操作异常是指________A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入
6.属于BCNF的关系模式________A.已消除了插入、删除异常B.已消除了插入、删除异常和数据冗余C.仍然存在插入、删除异常D.在函数依赖范畴内,已消除了插入和删除的异常7.从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是____A.M端实体的关键字B.N端实体的关键字C.M端实体关键字与N端实体关键字组合D.重新选取其他属性8.数据库的____是指数据的正确性和相容性A.安全性B.完整性C.并发控制D.恢复9.授权编译系统和合法性检查机制一起组成了____子系统A.安全性B.完整性C.并发控制D.恢复10.设有两个事务T
1、T2,其并发操作如图1所示,下列评价正确的是____A该操作不存在问题B.该操作丢失修改C.该操作不能重复读D.该操作读“脏”数据T1T2
①读A=100A=A*2写回
②读A=200
③ROLLBACK恢复A=100图1事务并发操作图
二、填空题(20分,每小空2分)1.DBMS的基本工作单位是事务,它是用户定义的一组逻辑一致的程序序列;并发控制的主要方法是
①封锁机制2.系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据不受影响,这种情况称为
②系统故障3.关系数据库中基于数学上两类运算是
③关系代数和
④关系演算4.数据库设计的几个步骤是
⑤需求分析,概念设计,逻辑设计,物理设计,编码和调试、实施运行和维护5.1NF,2NF,和3NF之间,相互是一种
⑥3NF2NFLNF成立关系6.视图是一个虚表,它是从
⑦一个或几个基本表中导出的表在数据库中,只存放视图的
⑧定义,不存放视图的
⑨视图对应的数据7.关系操作的特点是⑩集合操作
三、简答题(15分,每小题5分)1.什么是数据库?答数据库是长期存储在计算机内、有组织的、可共享的数据集合数据库是按某种数据模型进行组织的、存放在外存储器上,且可被多个用户同时使用因此,数据库具有较小的冗余度,较高的数据独立性和易扩展性2.什么是数据库的数据独立性?答数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性逻辑数据独立性是指局部逻辑数据结构(外视图即用户的逻辑文件)与全局逻辑数据结构(概念视图)之间的独立性当数据库的全局逻辑数据结构(概念视图)发生变化(数据定义的修改、数据之间联系的变更或增加新的数据类型等)时,它不影响某些局部的逻辑结构的性质,应用程序不必修改物理数据独立性是指数据的存储结构与存取方法(内视图)改变时,对数据库的全局逻辑结构(概念视图)和应用程序不必作修改的一种特性,也就是说,数据库数据的存储结构与存取方法独立数据独立性的好处是,数据的物理存储设备更新了,物理表示及存取方法改变了,但数据的逻辑模式可以不改变数据的逻辑模式改变了,但用户的模式可以不改变,因此应用程序也可以不变这将使程序维护容易,另外,对同一数据库的逻辑模式,可以建立不同的用户模式,从而提高数据共享性,使数据库系统有较好的可扩充性,给DBA维护、改变数据库的物理存储提供了方便3.叙述等值连接与自然连接的区别和联系答等值连接表示为RA=BS,自然连接表示为RS;自然连接是除去重复属性的等值连接两者之间的区别和联系如下自然连接一定是等值连接,但等值连接不一定是自然连接等值连接不把重复的属性除去;而自然连接要把重复的属性除去等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性等值连接不把重复的属性除去;而自然连接要把重复的属性除去
四、综合题(45分) 1.设有如下实体(10分)学生学号、单位、姓名、性别、年龄、选修课程名课程编号、课程名、开课单位、任课教师号教师教师号、姓名、性别、职称、讲授课程编号单位单位名称、电话、教师号、教师名上述实体中存在如下联系一个学生可选修多门课程,一门课程可为多个学生选修;一个教师可讲授多门课程,一门课程可为多个教师讲授;一个单位可有多个教师,一个教师只能属于一个单位试完成如下工作
(1)分别设计学生选课和教师任课两个局部信息的结构E-R图(4分)
(2)将上述设计完成的E-R图合并成一个全局E-R图(3分)
(3)将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构(3分)解
(1)学生选课局部E-R图如图2所示,教师任课局部E-R图如图3所示电话图2学生选课局部E-R图学生学号、单位、姓名、性别、年龄、选修课程名课程编号、课程名、开课单位、任课教师号教师教师号、姓名、性别、职称、讲授课程编号单位单位名称、电话、教师号、教师名上述实体中存在如下联系一个学生可选修多门课程,一门课程可为多个学生选修;一个教师可讲授多门课程,一门课程可为多个教师讲授;一个单位可有多个教师,一个教师只能属于一个单位课程名图3教师任课局部E-R图图4合并的全局E-R图
(2)合并的全局E-R图如图4所示为避免图形复杂,下面给出各实体属性单位单位名、电话学生学号、姓名、性别、年龄教师教师号、姓名、性别、职称课程编号、课程名
(3)该全局E-R图转换为等价的关系模型表示的数据库逻辑结构如下单位(单位名,电话)教师(教师号,姓名,性别,职称,单位名)课程(课程编号,课程名,单位名)学生(学号,姓名,性别,年龄,单位名)讲授(教师号,课程编号)选修(学号,课程编号)2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作(15分,每小题5分)SS#SNAMEAGESEX例(001李强23’男)SCS#C#SCORE例(003C183)CC#CNAMETEACHER例(C1数据库原理王华)
(1)试用关系代数检索选修了“程军”老师所授课程之一的学生姓名∏SNAMESSCTEACHER=程军C
(2)试用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名{T1|UVWSU∧SCV∧CW∧T
[1]=U
[1]∧U
[1]=V
[1]∧V
[2]=W
[1]∧W
[3]=程军}
(2)试用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号{T1|VWSCV∧CW∧T
[1]=V
[1]∧V
[2]=W
[1]∧W
[3]=程军}
(3)找出“程序设计”课程成绩在90分以上的学生姓名SELECTSNAMEFROMSSCCWHERES.S#=SC.S#ANDSC.C#=C.C#ANDSCORE=90ANDCNAME=程序设计或者SELECTSNAMEFROMSWHERERS.S#INSELECTS# FROMSC WHERESCORE=90ANDC.C#INSELECTC#FROMCWHERECNAME=程序设计3.设有关系模式R(U,F),其中(10分)U={A,B,C,D,E},F={A→BC,CD→E,B→D,E→A}⑴计算B+(2分)⑵求R的所有候选码(8分)解⑴令X={B},X0=B,X1=BD,X2=BD,故B+=BD⑵根据候选码的定义,R的候选码只可能由F中各个函数依赖的左边属性组成,即A,B,C,D,E,由于A→BC(A→B,A→C),B→D,E→A,故可除去A,B,C,D,组成候选码的属性可能是E计算可知E+=ABCDE,即E→U,E是一个候选码可除去A,B,E,组成候选码的属性可能是CD计算可知CD+=ABCDE,即CD→U,但C+=C,D+=D,CD是一个候选码可除去B,C,D,E,组成候选码的属性可能是A计算可知A+=ABCDE,即A→U,A是一个候选码可除去A,D,E,组成候选码的属性可能是BC计算可知BC+=ABCDE,即CD→U,但B+=BD,C+=C,BC是一个候选码R的所有候选码是A,BC,CD,E4.设有关系STUDENTS#SNAMESDEPTMNAMECNAMEGRADE,S#CNAME为候选码,设关系中有如下函数依赖(10分)S#CNAME→SNAMESDEPTMNAMES#→SNAMESDEPTMNAMES#CNAME→GRADESDEPT→MNAME试求下列问题
(1)关系STUDENT属于第几范式?(5分)
(2)如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为BCNF(5分)要求写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖 解
(1)关系STUDENT是1NF
(2)首先消除部分函数依赖{S#CNAME}→{SNAMESDEPTMNAME}将关系分解为R1S#SNAMESDEPTMNAMER2S#CNAMEGRADE在关系R1中存在非主属性对候选码的传递函数依赖S#→SDEPT,SDEPT→MNAME,所以以上关系模式还不是BCNF,进一步分解R1R11S#SNAMESDEPTR12SDEPTMNAMER11R12都是3NF关系模式R2S#CNAMEGRADER11S#SNAMESDEPTR12SDEPTMNAMER2R11R12关系模式存在的函数依赖S#CNAME→GRADE S#→SNAMESDEPT SDEPT→MNAME上述函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF.2003-2004学年第二学期期末考试2001级《数据库系统概论》试题B
一、选择题(20分,每小题2分)1.数据库系统的核心是____A.数据库B.数据库管理系统C.数据模型D.软件工具2.关系模型中,候选码____A.可由多个任意属性组成B.至多由一个属性组成C.可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成D.以上都不是3.SQL语言具有____的功能A.关系规范化、数据操纵、数据控制B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操纵4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE,最重要的,也是使用最频繁的语句是____A.SELECTB.INSERTC.UPDATED.DELETE
5.FoxBASE、FoxPro属于________A.表式系统B.最小关系系统C.关系完备的系统D.全关系系统6.关系规范化中的插入操作异常是指________A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入7.消除了部分函数依赖的INF的关系模式,必定是____A.1NFB.2NFC.3NFD.4NF8.在关系数据库设计中,设计关系模式是____的任务A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段9.____是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列A.程序B.命令C.事务D.文件10.设有两个事务T
1、T2,其并发操作如图1所示,下面评价正确的是____A.该操作不存在问题B.该操作丢失修改C.该操作不能重复读D.该操作读“脏”数据T1T2
①读A=10
②读A=10
③A=A-5写回
④A=A-8写回图1事务并发操作图
二、填空题(20分,每小空2分)1.如果数据库中只包含成功事务提交的结果,就说数据库处于
①一致状态2.完整性约束是指
②实体完整性和
③参照完整性3.关系数据库中可命名的最小数据单位是
④属性名4.保护数据安全性的一般方法是
⑤设置用户标识和存取权限控制5.“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的
⑥物理设计阶段6.若关系为1NF,且它的每一非主属性都
⑦不部分函数依赖于候选码,则该关系为2NF7.关系代数运算中,专门的关系运算有
⑧选择、
⑨投影和⑩连接
三、简答题和综合题(15分,每小题5分)1.举例说明关系参照完整性的含义答假如有下表所示的两个关系表,在成绩表中,学号是主码,课程号是外码在课程表中课程号是主码,根据关系参照完整性的定义,R2是成绩表,R1是课程表,也就是成绩表中课程号的值或者为空或者在课程表中的课程号中能够找到成绩表课程表学号姓名课程号成绩101刘军k580212王丽k876221章华k992课程号课程号k5高等数学k8C语言nk9计算机网络满足这个条件是必须的,如果不满足,假设成绩表中课程号的值k20在课程表中课程号的值中找不到,则该课程号显然是不正确的,这样会造成数据的不一致性2.数据库管理系统有哪些功能?答数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,它主要功能包括以下几个方面·数据定义功能DBMS提供数据描述语言(DDL),用户可通过它来定义数据·数据操纵功能DBMS还提供数据操纵语言(DML),实现对数据库的基本操作查询、插入、删除和修改·数据库的运行管理这是DBMS运行时的核心部分,它包括开发控制,安全性检查,完整性约束条件的检查和执行,数据库的内容维护等·数据库的建立和维护功能它包括数据库初始数据的输入及转换,数据库的转储与恢复,数据库的重组功能和性能的监视与分析功能等3.事务中的提交和回滚是什么意思?答事务中的提交(COMMIT)是提交事务的所有操作具体说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束事务中的回滚(ROLLBACK)是数据库滚回到事务开始时的状态具体地说就是,在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新操作全部撤消,使数据库回滚到事务开始时的状态
四、综合题(45分)1.假定一个部门的数据库包括以下的信息(10分)职工的信息职工号、姓名、住址和所在部门部门的信息部门名、部门所有职工、经理和销售的产品产品的信息产品名、制造商、价格、型号及产品内部编号制造商的信息制造商名称、地址、生产的产品名完成如下设计解本题对应的E-R图如图2所示图2E-R图
(1)设计该计算机管理系统的E-R图;(5分)
(2)将该E-R图转换为关系模型结构;(3分)
(3)指出转换结果中每个关系模式的候选码(2分)2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作(15分,每小题5分)SS#SNAMEAGESEX例(001李强23’男)SCS#C#SCORE例(003C183)CC#CNAMETEACHER例(C1数据库原理王华)
(1)用关系代数检索既选修了C1课程,又选修了C2课程的学生学号∏SNAMESC#=C1(SC)∩∏SNAMESC#=C2(SC)
(2)用元组关系演算表达式检索年龄大于21的男生的学号和姓名{t2|rSr∧t
[1]=r
[1]∧t
[2]=r
[2]∧r
[3]21∧r
[4]=男}
(3)用SQL找出“程序设计”课程成绩在90分以上的学生姓名解SELECTSNAMEFROMSSCCWHERES.S#=SC.S#ANDSC.C#=C.C#ANDSCORE=90ANDCNAME=程序设计或者SELECTSNAMEFROMSWHERERS.S#INSELECTS# FROMSC WHERESCORE=90ANDSC.C#INSELECTC#FROMCWHERECNAME=程序设计3.设有函数依赖集F={D→G,C→A,CD→E,A→B},计算闭包D+,AC+,ACD+(10分)解令X={D},X0=D,X1=DG,X2=DG,故D+=DG令X={AC},X0=AC,X1=ABC,X2=ABC,故AC+=ABC令X={ACD},X0=ACD,X1=ABCD,X2=ABCDG,X3=ABCDEG,故ACD+=ABCDEG4.设有关系R和函数依赖F(10分)R(W,X,Y,Z),F={X→Z,WX→Y}试求下列问题
(1)关系R属于第几范式?(5分)
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF(5分)要求写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖解R是1NF侯选码为WX,则Y,Z为非主属性,又由于X→Z,因此F中存在非主属性对侯选码的部分函数依赖 将关系分解为R1(W,X,Y),F1={WX→Y}R2(X,Z),F2={X→Z}消除了非主属性对码的部分函数依赖F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF2003-2004学年第二学期期末考试2001级《数据库系统概论》试题A
一、选择题(20分,每小题2分)1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段在这几个阶段中,数据独立性最高的是____阶段A.数据库系统B.文件系统C.人工管理D.数据项管理2.对关系模型叙述错误的是____A.建立在严格的数学理论、集合论和谓词演算公式的基础之上B.微机DBMS绝大部分采取关系数据模型C.用二维表表示关系模型是其一大特点D.不具有连接操作的DBMS也可以是关系数据库系统3.关系运算中花费时间可能最长的运算是____A.投影B.选择C.笛卡尔积D.除4.假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系____A.SB.SC,CC.S,SCD.S,C,SC
5.FoxBASE、FoxPro属于________A.表式系统B.最小关系系统C.关系完备的系统D.全关系系统6.关系规范化中的删除操作异常是指________A.不该删除的数据被删除B.不该插入的数据被插入C.应该删除的数据未被删除D.应该插入的数据未被插入7.在关系数据库设计中,设计关系模式是____的任务A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段8.从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的码是____A.M端实体的码B.N端实体的码C.M端实体码与N端实体码组合D.重新选取其他属性9.下面哪个不是数据库系统必须提供的数据控制功能____A.安全性B.可移植性C.完整性D.并发控制10.设有两个事务T
1、T2,其并发操作如图1所示,下面评价正确的是___A该操作不存在问题B.该操作丢失修改C.修改该操作不能重复读D.该操作读“脏”数据T1T2
①读A=10,B=5
②读A=10A=A*2写回
③读A=20,B=5求和25验证错图1事务并发操作图
二、填空题(20分,每小空2分)1.
①事务是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列2.若事务T对数据对象A加了S锁,则其他事务只能对数据A再加
②S锁,不能加
③X锁,直到事务T释放A上的锁3.关系操作的特点是
④集合操作4.关系代数中,从两个关系中找出相同元组的运算称为
⑤交运算5.在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则保持原有的函数依赖和
⑥无损连接6.SQL语言的数据定义功能包括
⑦定义数据库、
⑧定义基本表、
⑨定义视图和⑩定义索引
三、简答题(15分,每小题5分)1.使用数据库系统有什么好处?答使用数据库系统的好处是查询迅速、准确,而且可以节约大量纸面文件;数据结构化,并由DBMS统一管理;数据冗余度小具有较高的数据独立性;数据的共享性好;DBMS还提供了数据的控制功能2.叙述数据字典的主要任务和作用?答数据字典的任务就是管理有关数据的信息,所以又称为“数据库的数据库”它的任务主要有
(1)描述数据库系统的所有对象,并确定其属性如一个模式中包含的记录型与一个记录型包含的数据项;用户的标识、口令;物理文件名称、物理位置及其文件组织方式等数据字典在描述时赋给每个对象一个惟一的标识
(2)描述数据库系统对象之间的各种交叉联系如哪个用户使用哪个子模式,哪些模式或记录型分配在哪些区域及对应于哪些物理文件、存储在何种物理设备上
(3)登记所有对象的完整性及安全性限制等
(4)对数据字典本身的维护、保护、查询与输出数据字典的主要作用是
(1)供数据库管理系统快速查找有关对象的信息数据库管理系统在处理用户存取时,要经常查阅数据字典中的用户表、子模式表和模式表等
(2)供数据库管理员查询,以掌握整个系统的运行情况
(3)支持数据库设计与系统分析3.简要叙述关系数据库的优点?答关系数据库是以关系模型作为数据的组织方式,关系模型是建立在严格的数学概念基础上的,关系数据库的主要优点是概念简单清晰,用户不需了解复杂的存取路径,不需说明“怎么干”,只需说明“干什么”,易懂易学
四、综合题(45分)1.某医院病房计算机管理中需要如下信息(10分)科室科名,科地址,科电话,医生姓名病房病房号,床位号,所属科室名医生姓名,职称,所属科室名,年龄,工作证号病人病历号,姓名,性别,诊断,主管医生,病房号其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个
(1)完成如下设计设计该计算机管理系统的E-R图;(5分)本题的E-R图如图2所示图2E-R图
(2)将该E-R图转换为关系模型结构;(3分)对应的关系模型结构如下科室(科名,科地址,科电话)病房(病房号,床位号,科室名)医生(工作证号,姓名,职称,科室名,年龄)病人(病历号,姓名,性别,主管医生,病房号)
(3)指出转换结果中每个关系模式的候选码(2分)每个关系模式的候选码如下科室的候选码是科名;病房的候选码是科室名十病房号;医生的候选码是工作证号;病人的候选码是病历号2.设有关系S、SC、C,试用关系代数、元组关系演算表达式和SQL完成下列操作(15分,每小题5分)SS#SNAMEAGESEX例(001李强23’男)SCS#C#SCORE例(003C183)CC#CNAMETEACHER例(C1数据库原理王华)
(1)用关系代数检索选修课程号(C#)为C1和C2的学生学号(S#)ΠS#,C#(SC)ΠC#(σC#=’C1’C#=’C2’(C))-σC#’C1’C#’C2’(ΠS#,C#(SC)ΠC#(σC#=’C1’C#=’C2’(C)))
(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生姓名{T1|UVWSU∧SCV∧CW∧T
[1]=U
[1]∧U
[1]=V
[1]∧V
[2]=W
[1]∧W
[3]=程军}
(2)用元组关系演算表达式检索选修了“程军”老师所授课程之一的学生学号{T1|VWSCV∧CW∧T
[1]=V
[1]∧V
[2]=W
[1]∧W
[3]=程军}
(3)用SQL找出选修了“程军”老师教的所有课程的学生姓名SELECTS.SNAMEFROMSWHERENOTEXISTS SELECT* FROMC WHEREC.TEACHER=程军ANDNOTEXISTS SELECT* FROMSC WHERESC.C#=C.C#ANDSC.S#=S.S# 本题解释:SELECT*FROMCWHEREC.TEACHER=程军ANDEXISTS SELECT* FROMSC WHERESC.C#=C.C# 这条SQL是查询程军所授的所有课程外层查询中C.C#作为变量在内层查询中被使用外层教师程军所授课程的课程号C#给内层内层根据该课程号C#在SC中查询是否存在这样的课程号即程军所授的课程如果存在则括号中的记录集不空EXISTS条件为TRUE因此,执行结果是显示程军所授的所有课程SELECT*FROMCWHEREC.TEACHER=程军ANDNOTEXISTS SELECT* FROMSC WHERESC.C#=C.C# 这条SQL语句在刚才语句的EXISTS前加了NOT变成当内层查询全部是程军所授课程时NOTEXISTS条件为假SELECTS.SNAMEFROMSWHERENOTEXISTSSELECT* FROMC WHEREC.TEACHER=程军ANDNOTEXISTS SELECT* FROMSC WHERESC.C#=C.C#ANDSC.S#=S.S# 这条是完整的语句,比上面一条语句多了一个ANDSC.S#=S.S#表示某个学生的学号,加上最外层的NOTEXISTS的整个语句的含义是,对该某个学生,如果最内层查询中查询结果全部是‘程军’所授课程时,条件C.CNAME=程军ANDNOTEXISTS为FALSE,所以SELECT*FROMC的查询结果为空(第二层),这时最外层的NOTEXISTS为TRUE,最外层查找成功,该学生是选修了‘程军’所授全部课程的3.设有关系模式R(U,F),其中(10分)U={E,F,G,H},F={E→G,G→E,F→EG,H→EG,FH→E}求F的最小依赖集解⑴将F中右部属性单一化(2分)F1={E→G,G→E,F→E,F→G,H→E,H→G,FH→E}⑵去掉冗余的函数依赖对于FH→E,由于有F→E,则为多余的F2={E→G,G→E,F→E,F→G,H→E,H→G}(2分)3F2中的F→E和F→G,以及H→E,H→G之一是冗余的,则F3={E→G,G→E,F→G,H→G}(6分)1NNPMMNN制造商车辆保险公司车主驾驶员警察交通管理大队被盗拥有管理保险2事故制造违章保险111M11NNNNP1NNPMMNN制造商车辆保险公司车主驾驶员警察交通管理大队被盗拥有管理保险2事故制造违章保险111M11NNNNPn课程开课1课程名编号n学生拥有单位1年龄单位名姓名性别学号选修mn课程编号1单位属于教师n电话单位名讲授mn职称姓名性别教师号教师n学生拥有单位1属于1nn课程讲授mmn选修开设1n名称地址制造商m价格生产n型号销售ong1职工部门产品从属ongnmn产品内部编号职工号姓名地址部门名经理产品名YXYW1n1n组成诊治姓名年龄职称科地址科电话科名1科室从属医生n病历号性别姓名工作证号床位号病房号1病房入住病人nZYPAGE11。