1、数据库原理及应用期末考试试题一、单项选择题1234567891011121314151617181920DCCBCADBCACADDBCBCAB1. 组织层数据模型的三要素是 。A.外模式,概念模式和内模式 B.关系模型,网络模型,层次模型C.1:1的联系,1:n的联系,n:m的联系 D.数据结构,数据操作,数据约束条件2在关系模型中,任何关系必须满足约束条件包括实体完整性、 和用户自定义完整性。A动态完整性 B数据完整性C参照完整性 D结构完整性3 SQL Server 中的角色是 。A. 一个服务器登录 B. 一个数据库用户 C. 一组权限的集合 D. 一个服务器用户4 当数据的物理存储结
2、构改变时,应用程序无需改变,这样的特性称为数据的 。 A.逻辑独立性 B.物理独立性 C.程序无关性 D.物理无关性5下列哪个不是以处理大量数据为中心的应用程序的特点 。 A.涉及的数据量大 B.数据需长期联机保存 C.数据的计算复杂 D.数据可被多个应用所共享6ER图适用于建立数据库的 。A概念模型 B结构模型 C逻辑模型 D物理模型7. 在关系数据库设计中,设计关系模型属于 。A需求分析 B物理结构设计 C逻辑结构设计 D概念结构设计8 记录了对数据库中数据进行的每一次更新操作。A后援副本 B日志文件 C数据库 D缓冲区9 是用户定义的一组数据库操作序列,是一个基本的不可分割的工作单元。A
3、程序 B进程 C事务 D文件10信息世界中,实体是指 。 A客观存在的事物 B. 客观存在的属性 C. 客观存在的特性 D. 某一具体事件11. 数据库系统中, DBA表示 。 A应用程序设计者 B. 数据库使用者C. 数据库管理员 D. 数据库结构12数据库的概念模型独立于 。A具体的机器和DBMS BER图C信息世界 D现实世界13. 数据库系统包括 。 ADB、DBMS B. DB、DBMS、DBA、计算机硬件 C. DB、DBA DDB、DBMS、DBA、OS、计算机硬件 14. 在数据库结构中,保证数据库独立性的关键因素是 。 A数据库的逻辑结构 B. 数据库的逻辑结构、物理结构 C
4、数据库的三级结构 D. 数据库的三级结构和两级映射。 15、在下列关于关系的陈述中,错误的是 。 A. 表中任意两行的值不能相同 B. 表中任意两列的值不能相同 C. 行在表中的顺序无关紧要 D.列在表中的顺序无关紧要16有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于 。 A. 实体完整性约束 B. 参照完整性约束 C. 用户自定义完整性约束 D. 关键字完整性约束17. 定义外码实现的是哪一类完整性 。A.实体完整性 B. 参照完整性 C. 用户定义的完整性 D.检查完整性18如果事务T获得了数据项Q上的排它锁,则T对Q 。A. 只能读不能写 B.
5、只能写不能读 C. 既可读又可写 D. 不能读不能写19数据模型有三个要素,其中用于描述系统静态特性的是 。 A. 数据结构 B数据操作 C. 数据完整性约束 D数据检索 20在数据库设计中,将E-R图转换成关系数据模型的过程属于 。A. 需求分析阶段 B. 逻辑设计阶段 C. 概念设计阶段 D. 物理设计阶段1.DB、DBMS和DBS三者之间的关系是( B )。ADB包括DBMS和DBS BDBS包括DB和DBMSCDBMS包括DB和DBS D不能相互包括2.对数据库物理存储方式的描述称为( B )A外模式 B内模式 C概念模式 D逻辑模式3.在数据库三级模式间引入二级映象的主要作用是( A
6、 ) A提高数据与程序的独立性B提高数据与程序的安全性C保持数据与程序的一致性D提高数据与程序的可移植性4. 视图是一个“虚表”,视图的构造基于( C )A基本表 B视图 C基本表或视图 D数据字典5关系代数中的运算符对应SELECT语句中的以下哪个子句?( A )ASELECTBFROMCWHEREDGROUP BY6公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( C )A多对多 B一对一 C多对一 D一对多7如何构造出一个合适的数据逻辑结构是( C )主要解决的问题。 A关系系统查询优化 B数据字典C关系数据库规范化理论 D关系数据
7、库查询8.将E-R模型转换成关系模型,属于数据库的( C )。A. 需求分析 B. 概念设计C. 逻辑设计D. 物理设计9事务日志的用途是( C )A. 事务处理B. 完整性约束C. 数据恢复D. 安全性控制10如果事务T已在数据R上加了X锁,则其他事务在数据R上( D )A. 只可加X锁B. 只可加S锁C. 可加S锁或X锁D. 不能加任何锁1. ( B )是长期储存在计算机内、有组织的、可共享的大量数据的集合。A. 数据库系统 B. 数据库 C. 关系数据库 D. 数据库管理系统2. (1) 在数据库的三级模式中,内模式有( A )。A1个 B2个 C3个 D任意多个2. (2) 在数据库的
8、三级模式中,外模式有( D )。A1个 B2个 C3个 D任意多个2. (3) 在数据库的三级模式中,模式有( A )。A1个 B2个 C3个 D任意多个2. (4) 在数据库的三级模式体系结构中,内模式、模式和外模式个数的比例是( B )。A1:1:1B1:1:NC1:M:NDM:N:P3. 数据模型的三个要素分别是( B )。 A. 实体完整性、参照完整性、用户自定义完整性 B. 数据结构、关系操作、完整性约束 4. 数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是( A )。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS 5. 在关系模式R中
9、,Y函数依赖于X 的语义是:( B )。A. 在R的某一关系中,若两个元组的X值相等,则Y值也相等。B. 在R的每一关系中,若两个元组的X值相等,则Y值也相等。6. 若对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,而对于实体集B中的每一个实体,实体集A中只有1个实体与之联系,则实体集A和实体集B之间的联系类型为( B )。A1:1B1:NCM:NDN:16. (2) 若对于实体集A中的每一个实体,实体集B中有1个实体(n0)与之联系,而对于实体集B中的每一个实体,实体集A中只有1个实体与之联系,则实体集A和实体集B之间的联系类型为( A )。A1:1B1:NCM:NDN:1
10、7下列不属于数据安全性控制方法的是( D )。A用户标识和鉴定B用户存取权限控制C数据加密D网络流量控制8若关系R为M列P行,关系S为N列Q行,则( B )的结果为M+N列PQ行。AR-SBRSCRSDRS9. 数据模型应满足( D )的要求。A真实模拟现实世界B容易为人们所理解C便于在计算机上实现D以上都是10. 在可信计算机系统评测标准中,达到初步安全产品要求的是( )级。AC1BC2CB1DB211. 下面的选项不是关系数据库基本特征的是( A )。 A. 不同的列应有不同的数据类型 B. 不同的列应有不同的列名 C. 与行的次序无关 D. 与列的次序无关 12. 实现数据库安全性控制的
11、常用方法和技术有( A )A. 用户标识与鉴别、存取控制、视图机制、审计、数据加密13. 数据的( B )是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据。数据的( )是保护数据库防止恶意的破坏和非法的存取。A. 安全性、完整性 B. 完整性、安全性 14. SQL语言的GRANT和REVOKE语句主要是用来维护数据库的( C )。 C.安全性 D.一致性15. 关系模型中,一个码是( C )。 C. 由一个或多个属性组成,其值能够惟一标识关系中一个元组 D. 以上都不是 16. 当关系S自然联接时,能够把S原该舍弃的元组放到结果关系中的操作是 ( D )A.左外联接
12、 B.右外联接 C.外部并 D.外联接 17. 下列不属于需求分析阶段工作的是:( A )。A. 建立E-R图 B. 分析用户活动 C. 建立数据字典 D. 建立数据流图18. 数据库系统的数据独立性体现在( B ) 。 A. 不会因为数据的变化而影响到应用程序 B. 不会因为数据存储结构与数据逻辑结构的变化而影响应用程序 19. 若关系R为M列P行,关系S为N列Q行,则RS的结果为( B )列( )行。A.M+N、P+QBM+N、PQCMN、P+QDMN、PQ20. 在SQL语言的Select语句中实现选择运算的子句是( A )。A.SelectB.FromC.WhereD.Group by
13、22如果事务T对数据D已加S锁,则其他事务对数据D( A )A. 可以加S锁,不能加X锁 B. 可以加S锁,也可以加X锁 二、填空题1. 数据库的逻辑数据独立性是由 外模式/模式 2. 关系代数中专门的关系运算包括:选择、投影、连接和_除 _。3.设有学生表S(学号,姓名,班级)和学生选课表SC(学号,课程号,成绩),为维护数据一致性,表S与SC之间应满足 参照 完整性约束。4. 当数据库被破坏后,如果事先保存了数据库副本和 日志文件 ,就有可能恢复数据库。5. 如果一个满足1NF关系的所有属性合起来组成一个关键字,则该关系最高满足的范式是 3NF (在1NF、2NF、3NF范围内)。 6.设
14、关系模式R(A,B,C,D),函数依赖集FABC,DB,则R的候选码为 AD 。7. 从关系规范化理论的角度讲,一个只满足1NF的关系可能存在的四方面问题是:数据冗余度大、插入异常、_ 修改异常_和删除异常。8.并发控制的主要方法是 封锁 机制。9.若有关系模式R(A,B,C)和S(C,D,E),SQL语句SELECT A, D FROM R, S WHERE R.C=S.C AND E = 80 ; 对应的关系代数表达式是 A,D(E=80(RS) 。10.分E-R图之间的冲突主要有属性冲突、命名冲突、结构冲突三种。1. 数据模型通常分为层次模型、( 网状模型 )、( 关系模型 )、面向对象
15、模型和对象关系模型等。2. 关系模型中有三类完整性约束:( 实体完整性 )、( 参照完整性 )和用户定义的完整性。3. 关系数据库中,二维表中的列称为关系的( 属性或字段 ),二维表中的行称为关系的( 元组或记录 )。4. DBMS的主要功能有:( 数据定义功能 )、数据组织存储和管理功能、( 数据操作功能 )、数据库的事务管理和运行功能、 数据库的建立和维护功能。5. 关系代数运算中,专门的关系运算有( 选择 ),( 投影 )和连接。6. 已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,学生关系的主码是( 学号 ),学生关系的外码是(
16、系编号 )。7关系的实体完整性规则定义了( 主键字段 )不能取空值。8关系的参照完整性规则定义了和之间的引用规则。9事务的ACID特性包括:( 原子性 )、一致性、( 独立性 )和持续性。10事务并发控制机制中,避免活锁产生的方法是采用( 先来先服务 )的策略; 11第二范式是在第一范式的基础上消除了( 部分函数依赖 )。13( 事务 )是并发控制的基本单位。14在数据库的两层映像中,( 模式/内模式映像 )保证了物理独立性。14在数据库的两层映像中,( 外模式/模式映像 )保证了逻辑独立性。15事务并发控制机制中,预防死锁的方法是( 一次封锁法 )和( 顺序封锁法 ); 16第三范式是在第二
17、范式的基础上消除了( 传递函数依赖 )。17数据库系统的三级模式结构是指数据库系统由( 外模式 )、( 模式 )和 ( 内模式 )三级构成。18建立冗余数据最常用的技术是数据转储和( 备份日志文件 )。19数据库设计分为如下几个阶段:( 需求分析 )、( 结构设计 )、( 行为设计 )、( 数据库实施 )、( 数据库运行和维护 )。20数据库结构设计包括( 概念结构设计 )、( 逻辑结构设计 )、( 物理结构设计 )。21基本的锁类型有两种:( 排他锁或X锁或写锁 )、( 共享锁或S锁或读锁 )22并发操作带来的数据不一致性情况大致可以分为四种:( 丢失数据修改 )、( 读“脏数据” )、(
18、不可重复读 )和产生幽灵数据。1. 数据库系统的二级映象是指外模式/模式映像 和 模式/内模式映像。2. 施加在数据库数据之上的 _语义约束_ 条件称为数据库完整性约束条件。3. 将 1NF 的关系模式转变为 2NF 的关系模式,是消除了非主属性对主码的 _部分依赖_ 。4. 关系模式R,S具有共同的属性X, 且X是R的主码,但不是S的主码, 则X称为 S的外码 。5. 关系规范化理论是要消除一个不好的关系模式可能存在的 数据冗余 、插入异常 和 删除异常 等问题。6解决并发操作带来的数据不一致性问题普遍采用技术是 封锁 。7事务并发操作可能产生的三类不一致性问题是丢失修改 、不可重复读 和
19、读脏数据。8保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏,这是指数据的 安全性保护 。9数据库的完整性是指数据的 正确性 和 一致性 。10.数据库设计过程中的六个阶段为需求分析 、概念结构设计 、逻辑结构设计 、 物理结构设计 、 数据库时是和试运行 、 数据库运行和维护 。三、判断题1. 一个关系的主码必定是候选码。( )2在一个关系中,外码不能取空值。( )3. 概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象。( )4. 利用视图可加快查询速度。( )5. 用SQL 语句定义的视图属于关系数据库的外模式。( )6. 在关系数据库中索引的作用是加快数据的查找,因此
20、在创建数据库时应尽可能多地建立索引。( )7. SQL的标准库函数COUNT、SUM、AVG、MAX、MIN等,不允许出现在查询语句的 WHERE子句之中。( )8. 若某个关系是2NF的,那么它一定是3NF的。( )9. ROLLBACK 语句的功能是取消事务所做的更新操作。( )10. 两段锁协议用来保证并发事务不会产生死锁。( ) 1. 任何一个二元关系都是3NF( )2任何一个二元关系都是BCNF( )3. 任何一个二元关系都是4NF( )4一个无损连接的分解一定是保持函数依赖的。( )5一个保持函数依赖的分解一定具有无损连接性。( )6如果一个关系模式BCNF,那它一定3NF。( )
21、7关系摸式选课(学号,课程号,成绩),函数依赖集F=(学号,课程号)成绩,此关系模式BCNF。( )8若R.AR.B,R.A R.C,则R.AR.(B,C)。( )9若R.(B,C)R.A,则R.BR.A,R.CR.A。( )10规范化理论是数据库设计的理论指导和工具,规范化程度越高,模式就越好。( )1 2. 3. 4. 5. 6. 7. 8. 9. 101任何一个二元关系都是BCNF( )2. 任何一个二元关系都是4NF( )3.如果在一组属性子集上,不存在第二个函数依赖,则该属性集为关系模式的码。( )4如果一个关系模式3NF,那它一定BCNF。( )5如果一个关系模式BCNF,则在函数
22、依赖范畴内,已实现了彻底的分离,消除了插入、删除和修改异常。( )6规范化理论是数据库设计的理论指导和工具,规范化程度越高,模式就越好。( )7当且仅当函数依赖AB在R上成立,关系R(A,B,C)等于投影R1(A,B)和R2(A,C)的连接。( )8若R.AR.B,R.B R.C,则R.AR.C。( )9若R.BR. A,R.C R. A,则R.(B,C)R.A。( )10. 关系摸式选课(学号,课程号,成绩)中有“学号课程号”存在。( )8. 设有一个学生选课数据库,包括Student,SC,Course三个关系模式:Student(Sno,Sname,Ssex,Sage,Sdept)SC(
23、Sno,Cno,Grade)Course(Cno,Cname,Ccredit,Semester)试用SQL完成如下查询:查询SC表中的全部数据;查询计算机系学生的姓名和年龄;查询成绩在70-80分的学生的学号、课程号和成绩;查询计算机系年龄在18-20岁的男学生的姓名和年龄;查询C001课程号的最高分;查询计算机系学生的最大年龄和最小年龄;统计每个系的学生人数;统计每门课程号的选课人数和考试最高分;统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果;查询总成绩超过200分的学生,要求列出其学号和总成绩;查询选修C002课程的学生姓名和所在系;查询成绩80分以上的学生姓名、课程号和成绩
24、,并按成绩降序排列结果;查询哪些课程号没有学生选修,要求列出课程号和课程名;查询计算机系哪些学生没有选课,列出学生姓名;查询选修C001课程号的学生姓名和所在系;查询通信工程系成绩在80分以上的学生学号和姓名;查询计算机系考试成绩最高的学生姓名。查询年龄最大的男学生的姓名和年龄;查询C001课程号的考试成绩高于该课程号平均成绩的学生学号和成绩;创建内容为学生学号、姓名、所在系、课程号、课程名、课程学分的视图;创建内容为学生的学号、姓名、选修课程名和考试成绩的视图;创建内容为统计每个学生的选课门数的视图,要求列出学生学号和选课门数;创建内容为每个学生的选课总学分的视图,要求列出学生学号和总学分(
25、说明: 考试成绩超过60才能获得此课程的学分)删除选课成绩小于50分的学生的选课记录;将所有选修C001课程的学生的成绩加10分;将计算机所有选修“数据库原理及应用”课程的学生成绩加10分。答案:Select * from sc;Select sname,sage from student where sdept=计算机系;Select sno,course,grade from sc where grade between 70 and 80;Select sname,sage from student where sdept=计算机系 and ssex=男 and sage between
26、 18 and 20;Select max(grade) 最高分 from sc where cno=C001;Select max(sage) 最大年龄,min(sage) 最小年龄 from student where sdetp=计算机系;Select sdept,count(*) 学生人数 from student group by sdept;Select cno,count(*) 选课人数, max(grade) 最高分 from sc group by cno;Select sno,count(*) 选课门数, sum(grade) 总成绩 from sc group by sn
27、o order by count(*);Select sno,sum(grade) 总成绩 from sc group by sno having sum(grade)200;Select sname,sdept from student,sc where student.sno=sc.sno and cno=C002;Select sname,cno,grade from student,sc where student.sno=sc.sno and grade80 order by grade desc;SelectSelectSelectSelect sno,sname from stu
28、dent,sc where student.sno=sc.sno and sdept=通信工程系 and grade80;SelectSelectSelect sno,grade from sc where grade(select avg(grade) from sc where cno=c001) and cno=c001;Create view view1 as select sno,sname,sdept,cno,cname,ccredit from student,sc,course where student.sno=sc.sno and o=o;Create view view2
29、 as select sno,sname,cname,grade from student,sc,course where student.sno=sc.sno and o=o;得 分六、程序设计题(共15分,第1小题5分,第2小题10分)2以下给出三个基本表。Student(学生表)的字段按顺序为学号、姓名、性别、年龄、所属院系;Course(课程表)的字段按顺序为课程编号、课程名、先行课程、课程学分;SC(选课表)的字段按顺序为学号、课程号、成绩。试用SQL语句表示下列操作。(1)写出创建学生表Student的SQL命令,各字段的类型及长度应根据实际情况确定。其中学号属性不能为空,并且其值
30、是唯一的,并在Sno列上建立一个聚簇索引。(2)检索信息系(IS)和计算机科学系(CS)的学生的姓名和性别。(3)检索各个课程号及相应的选课人数。 (4)检索每个学生及其选修的课程名和成绩。(5)检索男生的平均年龄。2(1)写出创建学生表Student的SQL命令,各字段的类型及长度应根据实际情况确定。其中学号属性不能为空,并且其值是唯一的,并在Sno列上建立一个聚簇索引。 CREATE TABLE Student (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20), Ssex CHAR(1), Sage INT, Sdept CHAR(15); CREA
31、TE CLUSTED INDEX Stusname ON Student(Sname);(2)检索信息系(IS)和计算机科学系(CS)的学生的姓名和性别。SELECT Sname, Ssex FROM Student WHERE Sdept IN (IS,CS) (3)检索各个课程号及相应的选课人数。 SELECT Cno, COUNT(Sno) FROM SC GROUP BY Cno; (4)检索每个学生及其选修的课程名和成绩。 SELECT Student.Sno, Sname, Course.Cname, SC.Grade FROM Student, SC, Course WHERE
32、Student.Sno=SC.Sno and SC.Cno=Course.Cno;(5)检索男生的平均年龄。select 性别,avg(年龄)from studentwhere 性别=男group by 性别或select avg(年龄)from 基本情况group by 性别 having 性别=男四、根据各小题要求,写出对应的 SQL语句。以下给出三个基本表。Student(学生表)的字段按顺序为学号、姓名、性别、年龄、所属院系;Course(课程表)的字段按顺序为课程编号、课程名、先行课程、课程学分;SC(选课表)的字段按顺序为学号、课程号、成绩。各表的记录如下:1查询与“刘晨”在同一个
33、系学习的学生的学号、学生姓名。SELECT Sno, SnameFROM Student WHERE Sdept IN SELECT Sdept FROM Student WHERE Sname=刘晨; 2将一个新学生记录(03020;陈冬;男;18;IS)插入Student表中 INSERT INTO Student VALUES (95020, 陈冬, 男, 18,IS); 3将计算机科学系(CS)全体学生的成绩置零 UPDATE SC SET Grade=0 WHERE CS= (SELETE Sdept FROM Student WHERE Student.Sno=SC.Sno); 4
34、创建信息系(IS)选修了1号课程的学生的视图IS_S1,字段包括Sno、Sname、Grade。 CREATE VIEW IS_S1(Sno, Sname, Grade) AS SELECT Student.Sno, Sname, Grade FROM Student, SC WHERE Sdept=IS AND Student.Sno=SC.Sno AND SC.Cno=1; 四、根据各小题要求,写出对应的 SQL语句。以下给出三个基本表。Student(学生表)的字段按顺序为学号、姓名、性别、年龄、所属院系;Course(课程表)的字段按顺序为课程编号、课程名、先行课程、课程学分;SC(选
35、课表)的字段按顺序为学号、课程号、成绩。各表的记录如下:1写出创建学生表Student的SQL命令,各字段的类型及长度应根据实际情况确定。其中学号属性不能为空,并且其值是唯一的。并在Sno列上建立一个聚簇索引。 CREATE TABLE Student (Sno CHAR(5) NOT NULL UNIQUE, Sname CHAR(20), Ssex CHAR(1), Sage INT, Sdept CHAR(15); CREATE CLUSTED INDEX Stusname ON Student(Sname);2检索信息系(IS)和计算机科学系(CS)的学生的姓名和性别。SELECT Sname, Ssex FROM Student WHERE Sdept IN (IS,CS) 3检索各个课程号及相应的选课人数,并给出结果。 SELECT Cno, COUNT(Sno) FROM SC GROUP BY Cno; 4检索每个学生及其选修的课程名和成绩。 SELECT Student.Sno, Sname, Course.Cname, SC.Grade FROM Student, SC, Course WHERE Student.Sno=SC.Sno and SC.Cno=Course.Cno;
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100