第1页共12页命题人:审批人:试卷分类(A卷或B卷)A大学试卷(标准答案)学期:2006至2007学年度第一学期课程:《数据库原理》专业:班级:姓名:学号:题号一二三四五六七八九十总分得分一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题目的括号内。每小题1分,共20分)1.数据库系统的三级模式中,表达物理数据库的是(D)。A.外模式B.模式C.用户模式D.内模式2.设关系R和S的基数分别为r和s,则R×S的基数为(C)。A.r+sB.r-sC.r×sD.MAX(r,s)3.设有关系R(A,B,C)和S(D,A),如下图所示,R的主键为A,S的主键为D且外键为A,则关系S中违反参照完整性约束的元组是(D)。A.(1,2)B.(2,NULL)C.(3,3)D.(4,4)得分试卷编号第2页共12页4.为了使索引键的值在基本表中唯一,在建立索引的语句中应使用保留字(A)。A.UNIQUEB.COUNTC.DISTINCTD.UNION5.SQL的SELECT语句中,“HAVING条件表达式”用来筛选满足条件的(D)。A.列B.行C.关系D.分组6.实现关系代数投影运算的SQL子句是(A)。A.SELECTB.ORDERBYC.FROMD.WHERE7.设有关系模式R(A,B,C),F={A→B,C→B}。相对于F,R的候选键为(A)。A.ACB.ABCC.ABD.BC8.现有关系表:医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果,恢复情况)的主码是(A)。A.患者编号,医生编号,诊断日期B.医生编号C.诊断日期D.患者编号9.当关系R和S自然联接时,能够把R和S原该舍弃的元组放到结果关系中的操作是(D)。A.左外联接B.右外联接C.外部并D.外联接10.下列聚合函数中不忽略空值(null)的是(C)。A.SUM(列名)B.MAX(列名)C.COUNT(*)D.AVG(列名)11.具有坚实数学理论基础的数据模型是(A)。A.关系模型B.层次模型C.网状模型D.E—R模型12.以下关于E-R方法的叙述中,正确的是(D)。Ⅰ.E-R方法是设计数据库管理系统的方法Ⅱ.E-R方法应用于数据库概念结构设计阶段第3页共12页Ⅲ.实体、联系、属性都是E-R方法中的基本概念Ⅳ.在E-R方法中,总可以用三个二元联系来替代一个三元联系Ⅴ.在E-R方法中,无法表示同一实体集内实体之间的联系A.Ⅰ、Ⅲ、ⅣB.Ⅱ、Ⅲ、ⅤC.Ⅱ、ⅢD.Ⅱ、Ⅲ、Ⅳ13.SQL语言中,用GRANT/REVOKE语句实现数据库的(D)。A.并发控制B.完整性控制C.一致性控制D.安全性控制14.以下关于事务调度和封锁的描述中,正确的是(A)。A.遵守两段封锁协议的并发事务一定是可串行化的B.可串行化的并发事务一定遵守两段封锁协议C.遵守两段封锁协议的并发事务不一定是可串行化的D.遵守两段封锁协议的并发事务一定不会产生死锁15.多个事务执行的次序称为(D)。A.步骤B.过程C.流程D.调度16.在数据库系统中,视图可以提供数据的(C)。A.完整性B.并发性C.安全性D.可恢复性17.要求“学生”关系的“性别”属性只能取0或1,这属于关系的(C)。A.参照完整性规则B.实体完整性规则C.用户定义完整性规则D.域完整性规则18.设有事务T1和T2,其并发操作顺序如下图所示。该并发操作带来的问题是(C)。A.丢失更新B.不一致分析C.读了“脏数据”D.写错误19.将SQL嵌入到主语言使用时,必须区分SQL语句和主语句。通常在所有的SQL语句前T1T2①READ(S)②S:=S*2③WRITE(S)④⑤ROLLBACKREAD(S)第4页共12页加上(B)。A.:B.EXECSQLC.SQLD.DECLARE20.游标是系统为用户开设的一个(C),存放SQL语句的执行结果。A.帐号B.邮箱C.数据缓冲区D.硬盘存储区二、填空题(每小题1分,共10分)1.在数据库的三级模式结构中,数据按_____外模式_____的描述提供给用户。2.三级模式之间的两层映像保证了数据库系统中的数据能够具有较高的__逻辑独立性_____和___物理独立性_____。3.视图是定义在____基本表或其他视图____之上的。4.基本表中,“主码”概念应该体现其值的___惟一___和__非空___两个特征。5.数据库的安全性所关心的主要是__DBMS的存取控制机制___。6.用户权限由两个要素组成:__数据对象__和_操作权限__。7.数据库恢复的基本技术是__数据转储___和__登录日志__。8.登记日志文件时,必须先写__日志文件___,后写___数据库____。9.若关系为2NF,且它的每一非主属性既不_部分函数依赖于_候选码,也不传递函数依赖于___候选码,则该关系为3NF。10.E-R模型是数据库____概念结构___设计的一个有力工具。得分第5页共12页三、简答题(每小题3分,共12分)1.试述数据库系统的概念。答:数据库系统是指在计算机系统中引入数据库后的系统构成,一般由计算机硬件、数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和终端用户构成。2.试述关系模型的参照完整性规则。答:参照完整性规则为:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值)。或者等于S中某个元组的主码值。3.试述实现数据库安全性控制的常用方法和技术。答:(1)用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。(2)存取控制:通过用户权限定义和合法权检查确保只有拥有合法权限的用户才能访问数据库,所有未被授权的人员无法存取数据。(3)视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的人员隐藏起来,从而对数据提供一定程度的安全保护。(4)审计:建立审计日志,把用户对数据库的所有操作自动记录到审计日志中,DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容。得分第6页共12页(5)数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获知数据的内容。4.试述数据库设计过程。答:数据库设计分为六个阶段:(1)需求分析;(2)概念结构设计;(3)逻辑结构设计;(4)数据库物理设计;(5)数据库实施;(6)数据库运行和维护。四、综合应用题之一(共30分)有一个“学生-课程”数据库,数据库中包括三个表:“学生”表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,可记为:Student(Sno,Sname,Ssex,Sage,Sdept),Sno为关键字。“课程”表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,可记为:Course(Cno,Cname,Cpno,Ccredit),Cno为关键字。“学生选课”表SC由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,可记为:SC(Sno,Cno,Grade)(SNO,CNO)为关键字。1、试用关系代数完成如下查询:(每小题3分,共12分)(1)查询计算机系学生的学号与姓名答:πSno,SNAME(σsdept='计算机'(Student))(2)查询选修课程名为“信息系统”这门课程的学生姓名和成绩答:πsname,grade(σcname=’信息系统’(Student⋈SC⋈Course))(3)查询没有选修课程名为“数据库”的学生学号答:πSno(Student)-πsno(σgcname=’数据库’(Course⋈SC))(4)查询选修了全部课程的学生学号.得分第7页共12页答:πSno,cno(SC)÷πcno(Course)2、写出下列操作的SQL语句、或补充完整SQL语句(每小题3分,共18分)(1)创建“学生选课”表SCCreatetablesc(snochar(7),Cnochar(4),Gradesmallint,PRIMARYKEY(Sno,Cno),//主码定义FOREIGNKEYSnoREFERENCESStudent(Sno),//外码定义FOREIGNKEYCnoREFERENCESC(Cno))//外码定义)(2)查询没有选修课程号为“5”的学生学号和姓名答:解法1、selectsno,snameFromstudentWheresnonotin(SelectsnoFromscWherecno=’5’)解法2、selectsno,snameFromstudentWherenotexists(Select*FromscWheresno=student.snoandcno=’5’)(3)把MATHS课不及格同学的成绩全改为60分第8页共12页答:UPDATESCSETGRADE=60WHEREGRADE60ANDCnoIN(SELECTCnoFROMCourseWHERECNAME='MATHS')。或UPDATESCSETGRADE=60WHEREGRADE60ANDCno=(SELECTCnoFROMCourseWHERECNAME='MATHS')。(4)统计每个学生选修课程的门数(超过3门的学生才统计)。要求输出学生学号和选修门数。答:Selectsno,count(*)FromscGroupbysnoHavingcount(*)3(5)将学生的学号及他的平均成绩定义为一个视图S_G答:CreateviewS_G(sno,AVG_grade)ASSelectsno,AVG(grade)fromSCgroupbysno(6)把查询SC表和修改成绩的权限授给用户USER4答:Grantselect,update(grade)OnscTouser4或:Grantselect,update(grade)OntablescTouser4第9页共12页五、综合应用题之二(每小题10分,共20分)某学校数据库管理系统中有如下实体集:系:属性有系代号、系名、位置、系主任班级:属性有班代号、班导师、人数学生:属性有学号、姓名、性别、出生日期课程:属性有课程号、课程名、先修课、学分教研室:属性有编号、名称、位置教师:属性有教师号、姓名、性别、出生日期、职称研究生:属性有学号、姓名、性别、出生日期、研究方向其中,每个系有若干班级和教研室,每个教研室有若干教师,有的教授和副教授每人各带若干名研究生,每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修,学生选修课程后有成绩,每门课程可由多个教师讲授,一个教师可以讲授多门课程,但每门课程不重复讲授,课程分派给教师时指定上课地点和上课时间。(1)试画出E-R图,并在图上注明属性、联系类型。得分第10页共12页1n系包含班级组成学生选修课程组成教师研究生nn1nnmnm教研室1讲授指导1n成绩地点时间系代号系系名位置系主任编号名称位置教研室学号姓名性别出生日期学生第11页共12页(2)将E-R图转换成关系模型,并说明主码和外码。答:1)系(系代号,系名,位置,系主任)主码为系代号2)班级(班代号,班导师,人数,系代号)主码为班代号,外码为系代号3)学生(学号,姓名,性别,出生日期,班代号)主码为学号,外码为班代号4)课程(课程号,课程名,先修课,学分)主码为课程号5)选修(学号,课程号,成绩)主码为学号+课程号,外码为学号、课程号6)教研室(编号,名称,位置,系代号)主码为编号,外码为系代号7)教师(教师号,姓名,性别,出生日期,职称,编号)主码为教师号,外码为编号(注:编号为教研室中编号)课程号课程名先修课学分课程教师号姓名性别出生日期职称教师学号姓名性别出生日期研究方向研究生第12页共12页tt讲授(教师号