2014春数据库原理及应用复习资料及答案new

更新时间:2023-11-02 13:39:02 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数据库原理及应用期末考试注意事项(2014春)

一、题型说明

期末考试包括五种题型,具体分布情况如下: 1. 单项选择题:10题,共计20分 2. 填空题:10题,共计15分

3. 根据已知场景写出SQL语句或关系代数表达式:7题,共计35分 注:有2道小题机电与软工专业有所区别。 4. 设计题:1题,共计10分 5. 问答题:4题,共计20分

注:有1道小题机电与软工专业有所区别。机电专业的4个小题均为叙述性问答题;软工专业的3个小题中,有3题为叙述性问答题,1题为规范化理论部分应用题。

二、答题注意事项

机电与软工专业使用同一套考卷。在第3大题和第5大题中一共存在15分的题目对两个专业要求不同。要求不同的题目均已在卷面上明确指出,答题时请看清楚要求。

1

复习题

一、单项选择题

1. (A)是对数据库中全部数据的逻辑结构和特征的描述。

A.模式 B.外模式 C.内模式 D.视图

2. (B)是对数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述

A.模式 B.外模式 C.内模式 D.概念模式

3. 数据库中的记录是按照B+树存储还是按hash方法存储,这一特征在数据库的(C)中定义。

A.模式 B.外模式 C.内模式 D.子模式 4. 在SELECT语句中,(A)关键字可以消除重复值

A. DISTINCT B. UNIQUE C. * D. ALL 5. 概念模型的表示方法有很多种,其中最著名的是(B)。

A.关系模型 B. E-R模型 C.层次模型 D.网状模型 6. 数据库的概念模型(D)

A. 独立于计算机硬件,依赖于 DBMS B. 依赖于计算机硬件,独立于 DBMS C. 依赖于计算机硬件和 DBMS D. 独立于计算机硬件和 DBMS

7. 若关系R和S的属性个数分别为m和n,则R×S的属性个数为(C)。

A.m B.n C.m+n D. m×n

8. 若关系R和S的元组个数分别为m和n,则R∪S的元组个数为(B)。

A.m+n B.小于或等于m+n C.大于m D.大于n 9. 已知关系R1和R2进行关系运算后得到S,则S是(B)

A. 一行记录 B. 一个关系 C. 一个确定值 D. 一个数组 10. 若关系R和S的元组个数分别为m和n,则R-S的元组个数是(D)。

A. m-n B.小于m C.小于n D.小于等于m 11. 设关系R,S,W各有10个元组,则这三个关系的笛卡尔积的元组个数为(D)

A. 10 B. 30 C. 100 D.1000 12. 在信息系统的设计中,普遍采用的是基于(B)的系统设计方法。

A. BCNF B.3NF C.2NF D.4NF 13. 在数据库中空值表示(C)。

A.0 B.默认值 C.不确定 D.空格 14. SQL中,下列涉及空值的操作,不正确的是(A)。

A. AGE=NULL

B. AGE IS NOT NULL C. AGE IS NULL

D. NOT(AGE IS NULL)

15. 在 SQL 语句中,与 X BETWEEN 20 AND 30 等价的表达式是(D)

A. X>=20 AND X<30 B. X>20 AND X<30 C. X>20 AND X<=30 D. X>=20 AND X<=30

16. 下列不是关系数据库产品的是(D)。

A.SQL Server B.Oracle C.DB2 D.IMS

2

17. 关于视图,下列说法错误的是(B)。

A.视图是虚拟表 B.数据可以存放在视图中

C.在视图上做查询与在基本表上做查询方法是相同的 D.视图可以建立在多个基本表的基础之上 18. 关于视图,下列说法正确的是(A)

A. 建立视图语句的关键部分是查询语句

B. 若导出某视图的数据库表被删除了,该视图不受任何影响 C. 视图一旦建立,就不能被删除

D. 当某一视图被删除后,导出该视图的数据库表将会受到影响 19. 数据库应用程序开发中,需求分析阶段的主要目的是(A)。

A.回答“做什么”的问题 B.回答“怎么做”的问题 C.建立逻辑数据模型 D.建立最佳物理存储结构

20. 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)

A. 可行性分析 B.需求分析 C. 概念设计 D.物理设计

21. 实体与实体的联系,反映在数据上是(C)之间的联系

A. 文件 B. 集合 C. 记录 D. 结构

22. 在关系模型中,\关系中不允许出现相同的元组\的约束是通过(B)实现的 A. 候选键 B. 主键 C. 外键 D. 超键 23. 关于索引,下列说法错误的是(C)。

A. 索引可以加快数据的检索速度 B. 建立索引会牺牲一定的系统性能 C. 在一张表上可以建立多个聚集索引 D. 在一张表上可以建立多个非聚集索引

24. SQL Server系统中所有的系统级信息均存放在(A)数据库中。

A. master B. model C. tempdb D. msdb 25. 关于T-SQL,下列说法正确的是(B)。

A. 是过程化语言 B. 是非过程化语言

C. 是高级语言 D. 是SQL Server、Oracle等关系数据库的标准访问语言 26. (A)是数据库系统的核心,是位于用户和操作系统之间的一层数据管理软件。

A.DBMS B.DBS C.DBA D.DDL

27. 一门课程只能由一名教师讲授,一名教师可讲授多门课程,则教师与课程之间存在(B)联系。

A.1:1 B.1:N C.N:1 D.M:N

28. 在教学管理系统中,一名学生可以选择多门课程,一门课程可以被多名学生选择,则学生与课

程之间的联系是(C) A. 一对一 B. 一对多 C. 多对多 D. 未知 29. 数据库管理系统的英文缩写是(A)。

A.DBMS B.DBA C.DBS D.MIS

30. 设关系模式R(XYZ),已知存在函数依赖X->Y和X->Z,则R的候选键是(A)。

A. X B. Y C. Z D.XY 31. 事务必须满足的四个原则是(A),一致性,隔离性,持久性。

A. 原子性 B. 完整性 C. 安全性 D.正确性

3

32. 事务并发执行时,每个事务不必关心其他事务,如同在单用户环境下执行一样,这个性质称为

事务的(D) A. 持久性 B. 一致性 C. 独立性 D. 隔离性 33. 下面哪种情况下适合建立索引(C)。

A. 经常进行插入操作的表 B. 行数较小的表

C. 更新少而数据量大的表 D. 表中存在大量重复值的列 34. 关于存储过程与触发器,下列说法正确的是(B)。

A. 存储过程是存储在客户端的SQL程序 B. 触发器是一种存储过程 C. 触发器可通过其名字被用户直接调用 D .存储过程是一种触发器

35. 当SELECT语句返回的结果是一个集合时,可以借助(B)对其中的单行记录进行处理。

A. 锁 B. 游标 C.索引 D .存储过程

36. 用户使用SQL Server时,通常需要依次经过(A)两个安全性阶段。

A. 身份验证、权限验证 B. 权限验证、身份验证 C. 登录验证、操作验证 D .操作验证、登录验证 37. 下列关系代数操作中最费时的是(B)。

A.投影 B.笛卡尔积 C.选择 D.交 38. 下列关系代数操作中最费时的是(B)。

A.投影 B.连接 C.选择 D.并 39. 关系数据库中由数据冗余导致的异常不包括(D)。

A.插入异常 B.删除异常 C.修改异常 D.查询异常 40. 在函数依赖范畴内,(C)是关系模式能够达到的最高规范化程度。

A.3NF B.4NF C.BCNF D.5NF

41. 一个事务中所有对DB的操作是一个不可分割的整体,这个性质称为(D)。

A.完整性 B.一致性 C.隔离性 D.原子性 42. 关于主键约束,下列说法正确的是(A)。

A.主键值不为空,也不允许出现重复 B.主键值不为空,但允许出现重复 C.主键值允许空,但不允许出现重复 D.主键值允许空,也允许出现重复 43. 关于参照完整性,下列说法中错误的是(A)。

A.外键属性取值不能为空 B.关系中不允许引用不存在的实体 C.可以通过定义外键实现 D.外键属性取值允许为空 44. 在SELECT语句中,能够实现对查询结果排序的操作是(B)

A. COUNT B. ORDER BY C. GROUP BY D. INDEX 45. 下列说法中错误的是(C)

A. 模式分解是关系规范化的基本方法

B. 实际应用中,数据库设计一般应达到3NF

C. 若一个关系模式符合2NF,则它必然也符合3NF

D. 实际应用中常常为了提高查询效率而允许数据库中存在一定的数据冗余

二、填空题

1. 在数据库的三级模式结构中,视图属于 外模式 范畴。 2. 在数据库的三级模式结构中,索引属于 内模式 范畴。 3. 在数据库的三级模式结构中,基本表属于 模式 范畴。

4

4. 在关系数据库中,建立数据库表时,将年龄字段值限制在12~40岁之间的这种约束属于数据库

完整性规则中的 用户定义的完整性(或域完整性)。

5. 实体完整性的含义是关系中元组在主键属性上 不为空 。 6. 实体完整性的含义是关系中元组在 主键 属性上不允许为空。

7. SQL查询语句中,SELECT子句对应于关系代数中的 投影 操作。 8. SQL查询语句中,WHERE子句对应于关系代数中的 选择 操作。 9. 关系代数中的 选择 操作是对一个关系进行水平分割。 10. 关系代数中的 投影 操作是对一个关系进行垂直分割。 11. 设关系R、S和W的元组个数分别为3、5和6,则这三个关系的笛卡尔积的元组个数为 90 。 12. 删除数据库中已经存在的表X,应采用的SQL语句是 drop table X 。 13. 删除数据库中定义的视图Y,可以采用的SQL语句是 drop view Y 。 14. 删除数据库Z,可以采用的SQL语句是 drop database Z 。 15. 已知关系模式R(ABC),若A->C,则AB->C是 部分 函数依赖。

16. 已知关系模式R(A,B,C,D,E)及其上的函数依赖集合F={A->B,B->C},则A->C为 传递 函

数依赖。

17. 已知关系模式R(A,B,C,D),且R上存在函数依赖A->B和B->C,则R上的传递函数依赖是

A->C 。

18. SQL Server提供了两种确认用户的验证模式,包括Windows验证和 混合验证 。 19. SQL Server提供了两种确认用户的验证模式,包括 Windows验证 和混合验证。

20. 游标 提供了一种从包括多条数据记录的SELECT返回结果集中每次提取一条记录的机制。 21. 在数据库设计的需求分析阶段, 数据字典 是数据库系统中各类数据详细描述的集合,提供了

对各类数据描述的集中管理。

22. 将ER图转换为关系模型的过程,属于数据库设计的 逻辑设计 阶段。

23. 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是 需求分析 。 24. nchar(10)用于存放固定长度的10个 Unicode 字符数据。

25. char与varchar的区别在于, varchar 按可变长存储字符数据。 26. char与nchar的区别在于, nchar 用于存放Unicode字符数据。

27. 数据库完整性约束包括 实体完整性 、参照完整性和用户定义的完整性。 28. 数据库完整性约束包括实体完整性、 参照完整性 和用户定义的完整性。

29. 触发器 是一种特殊的存储过程,当有操作影响到它保护的数据时,就会自动执行。 30. 事务处理必须满足的四个原则是: 原子性 、一致性、隔离性和持久性。

31. 当多个事务同时读取或修改相同的数据库资源时, 锁 是进行并发控制的主要方法。 32. 事务日志 记录了用户对数据库的各种操作。 33. E-R模型中的E表示 实体 ,R表示联系。 34. E-R模型中的E表示实体,R表示 联系 。

三、根据已知场景按要求写出SQL语句或关系代数表达式

注:多表做连接查询时可以有多种解题方法,下述答案仅提供了在where子句中书写连接条件的解法;学生也可根据个人习惯采用inner join或是嵌套查询方式 1. 已知网上图书销售系统数据库中包括三张表:

? 客户信息表customer(cid,cname,email,tel,address),存放客户账号、姓名、电子邮箱、电

话以及地址; (所有字段均为字符型)

? 图书信息表book(bid,bname,author,press,price,ISBN),存放图书编号、书名、作者、出

5

版社、价格和ISBN号; (价格字段为整型,其他字段均为字符型) ? 图书购买记录表cb(cid,bid,shoppingdate,quantity),存放客户账号、图书编号、购买日期、

数量。 (购买日期为日期型,数量为整型,其他字段均为字符型)

(1) 利用SQL查询价格在50元到100元(含50、100元)之间的图书信息; select *

from book

where price between 50 and 100

(2) 利用SQL查询购买了编号为“b001”的图书的客户的账号和购买日期,按购买日期由先到

后排序

select cid, shoppingdate from cb

where bid=’b001’ order by shoppingdate

(3) 利用SQL查询所有姓名中含有“华”字的客户的姓名、电话和地址

select cname, tel, address from customer

where cname like ‘%华%’

(4) 利用SQL查询“高等教育出版社”出版的图书的平均价格

select avg(price) from book

where press=’高等教育出版社’

(5) 创建一个用于查询各出版社出版的图书的数量的视图(视图名称自行定义)

create view myview as

select press, count(*) from book group by press

(6) 利用SQL查询账号为“c001”的客户购买的所有图书的书名和购买日期

select bname, shoppingdate from book, cb

where book.bid=cb.bid and cid=’c001’

(7) 利用SQL查询一次购买了超过50本《数据库应用技术》图书的客户的姓名

select cname

from customer, book, cb

where customer.cid=cb.cid and book.bid=cb.bid

and bname=’数据库应用技术’ and quantity>50

6

(8) 利用SQL查询所有购买了图书《软件工程》的客户的姓名

select cname

from customer, book, cb

where customer.cid=cb.cid and book.bid=cb.bid and bname=’软件工程’

(9) 利用关系代数表达式查询价格高于50元的图书的书名

(10) 利用关系代数表达式查询购买了《数据库应用技术》的客户姓名

2. 已知图书管理数据库中包括三张表:

? 学生信息表student(sid,sname,age,sex,major),存储学生的学号、姓名、年龄、性别

以及专业名称;(年龄字段为整型,其余字段均为字符型) ? 图书信息表book(bid,bname,author,press,price,ISBN),存储图书的编号、书名、作

者、出版社、价格和ISBN号;(价格字段为整型,其余字段均为字符型) ? 图书借阅记录表sb(sid,bid,borrowdate),存储学号、图书编号、借阅日期; (借阅日期字段为日期型,其余字段均为字符型)

(1) 利用SQL查询年龄在20到25岁之间的学生信息

select * from student

where age between 20 and 25

(2)利用SQL查询“清华大学出版社”出版的书籍的图书编号,图书名和价格,按价格由低到高排序

select bid,bname,price from book

where press=’清华大学出版社’

order by price ( 此句也可写为 order by price asc ) (3)利用SQL查询所有姓李的学生的姓名、年龄、性别和专业

select sname,age,sex,major

from student

where sname like ‘李%’

(4)利用SQL查询“软件工程”专业学生的平均年龄 select avg(age) from student

7

where major=‘软件工程’ (5)利用SQL查询各专业的学生人数

select major,count(sid)

from student group by major

(6)利用SQL查询所有借阅了图书《数据库技术基础》的学生的学号 select sid

from book,sb

where book.bid=sb.bid and bname=’数据库技术基础’

(7)利用SQL查询学号为“s010”的学生借阅的所有图书的书名和借阅日期

select bname,borrowdate

from book,sb

where book.bid=sb.bid and sid=’s010’

(8)利用SQL查询王伟同学借阅的所有图书的书名和借阅日期 select bname,borrowdate from student,book,sb

where student.sid=sb.sid and book.bid=sb.bid and sname=’王伟’

(9)利用SQL查询女学生借阅的图书书名 select bname

from student,book,sb

where student.sid=sb.sid and book.bid=sb.bid and sex=’女’

(10)利用关系代数表达式查询男学生借阅的图书书名

(11)利用关系代数表达式查询年龄大于等于30岁的学生借阅的图书书名

3. 已知教学管理数据库中包括三张表:

? 教师信息表teacher(tid,tname,age,sex,title),存储教师的工号、姓名、年龄、性别以

及职称信息; (年龄字段为整型、其余均为字符型) ? 课程信息表course(cid,cname),存储课程的课程号和课程名称;(字段均为字符型) ? 授课信息表tc(tid,cid),存储教师工号、课程号 (字段均为字符型) (1)利用SQL查询年龄在25到35岁之间的教师信息 select *

from teacher

where age between 25 and 35

(2)利用SQL查询男教师的姓名和年龄,按年龄由高到低排序

8

select tname,age from teacher

where sex=‘男’ order by age desc

(3)创建一个男教师视图,包括所有男教师的工号、姓名、年龄、职称(视图名称自定义) create view myview as

select tid, tname, age, title from teacher where sex=’男’

(4) 利用SQL查询所有姓张的教师的姓名、年龄和性别 select tname,age,sex from teacher

where tname like ‘张%’

(5)利用SQL查询专业技术职称为“副教授”的教师的最小年龄 select min(age) from teacher

where title=‘副教授’

(6)利用SQL查询各个专业技术职称的教师人数 select title,count(tid) from teacher group by title

(7)利用SQL查询讲授“数据库”课程的教师的工号 select tid

from course,tc

where course.cid=tc.cid and cname=‘数据库’

(8)利用SQL查询工号为“t001”的教师讲授的所有课程的课程名 select cname from course,tc

where course.cid=tc.cid and tid=’t001’

(9)利用SQL查询教师张华讲授的所有课程的课程名 select cname

from teacher,course,tc

where teacher.tid=tc.tid and course.cid=tc.cid and tname=‘张华’

(10)利用SQL查询由男教师讲授的课程的名称 select cname

from teacher,course,tc

where teacher.tid=tc.tid and course.cid=tc.cid and sex=‘男’

9

(11) 利用关系代数表达式查询年龄在20到30岁之间的教师讲授课程的课程名称

四、设计题

1. 某商业集团的销售管理系统数据库中有如下信息:

? 商店:商店编号,商店名,地址

? 商品:商品编号,商品名,规格,单价 ? 职工:工号,姓名,性别,业绩

其中约定:一个商店可销售多种商品,一种商品可在多个商店销售,每个商店对所销售的每一种商品按月进行销量统计;一个商店有多名职工,一个职工仅在一个商店任职,商店聘用职工有月薪。根据以上情况,完成下述设计: (1) 设计系统的E-R图

(2) 将E-R图转换为关系模式,并指定其中的主键和外键 答案:

2. 一个图书馆管理系统中有如下信息:

? 图书:书号,书名,数量,位置 ? 借书人:借书证号,姓名,单位

? 出版社:出版社名,地址,电话,Email

其中约定:任何人都可以借多种书,任何一种书可以被多个人借,借书和还书时要登记借阅时间;一个出版社可以出版多种书籍,同一本书仅由一个出版社出版,出版社名具有唯一性。根据以上情

10

本文来源:https://www.bwwdw.com/article/tgt2.html

Top