当前位置:文档之家 > 2015-2016数据库期末复习题(带答案)

2015-2016数据库期末复习题(带答案)

一、选择题

1.在数据库的三级体系结构中,外模式/逻辑模式映象可以保证数据结构和

应用程序之间的。

A.逻辑数据独立性B.物理数据独立性

C.数据一致D.数据安全性

2.关系数据库用______来表示实体之间的联系。

A. 树结构

B. 网结构

C. 二维表

D. 线性表

3.主键的属性上有空值违反了。

A.实体完整性规则B.参照完整性规则

C.安全性规D.模型转换规则

4.数据独立性是指之间相互独立,不受影响

A.概念数据模型和逻辑数据模型

B.应用程序和数据库的数据结构

C.概念数据模型与数据库的数据结构

D.数据与数据库的数据结构

5.参照完整性规则是对的约束。

A.超键B.候选键

C.主键D.外键

6.在层次模型中,记录之间的联系通过来实现。

A.指针B.数组

C.公共属性D.对象标识

7.数据库系统三级结构的描述放在中。(不确定)

A.用户数据库B.运行日志

C.数据库管理系统D.数据字典

8.如果两个关系没有公共属性,那么其自然连接操作。

A.转化为笛卡尔积操作B.转化为半连接操作

C.转化为外部并操作D.结果为空关系

9.设关系R和S的元组个数分别为100和300,关系T是R与S的笛卡尔

积则T的元组个数是________。

A.400

B.10000

C.30000

D.90000

(根据笛卡尔积的定义可知,如果关系R和S的元数分别为r和s。R和

S 的笛卡尔积是一个r+s 的元的元组集合,每个元组的前r 个分量来自R

的一个元组,后s 个分量来自S 的一个元组;若R 中有m 个元组, S 有

n 个元组,则R * S 有m * n 个元组。因此,本题R 与S 的笛卡尔积的元

组个数应为100*300=30000。

10. 设关系R 和S 具有相同的目(或称度),且相对应的属性的值取自同一个

域,则,R-(R-S)等于

A.R ∪S

B.R∩S

C. R ?S

D. R-S

11. 设有关系R 和关系S 进行如下图所示的运算,则θ连接运算(B

中含有元组的数目是 .

A. 6

B. 7

C. 8

D. 9

R S

2015-2016数据库期末复习题(带答案)

2015-2016数据库期末复习题(带答案)

12. SQL 语言中,删除一个表的命令是 。

A. DELETE

B. DROP

C.CLEAR

D. REMORE

13. SQL 语言中,删除记录的命令是 。

A. DELETE

B. DROP

C. CLEAR

D. REMORE

14. 设有一个关系:DEPT (DNO ,DNAME ),如果要找出倒数第三个字母为

W ,并且至少包含4个字母的DNAME ,则查询条件子句应写成WHERE

DNAME LIKE 。

A. ‘_ _ W _ %’

B. ‘_ % W _ _’

C. ‘_ W _ _’

D. ‘_ W _ %’

15. 学生表(XS.DBF)的表结构为:学号(XH ,C ,8),姓名(XM ,C ,8),

性别(XB ,C ,2)班级(BJ,C,6),用Insert 命令向XS 表添加一条新记

录,记录内容为: XH XM XB BJ 99220101 王 凌 男 992201

下列命令中正确的是 ________。

A . INSERT INTO XS V ALUES("99220101","王 凌","男","992201")

B.INSERT TO XS V ALUES("99220101","王 凌","男","992201")

C.INSERT INTO XS(XH,XM,XB,BJ) V ALUES(99220101, 王 凌,

男,992201)

D.INSERT TO XS(XH,XM,XB,BJ) V ALUES("99220101"," 王凌","男

","992201")

16.在SQL的语句中,UPDATE的作用是。

A.修改基本表的结构B.修改基本表中的数据

C.修改索引的定义D.修改视图的定义

17.在SQL的语句中,ALTER的作用是。

A.修改基本表的结构B.修改基本表中的数据

C.删除基本表D.修改视图

18.SQL中,谓词可用来测试一个集合是否有重复元组。

A.UNIQUE B.DISTINCT

C.EXISTS D.ONLY

19.在select语句中,可以使用关键字来排除重复的元组。

A.EXCLUDE.

B.UNIQUE.

C. DISTINCT.

D.ON

E.

20.SELECT-SQL语句中,条件短语的关键字为。

A.FOR

B. FROM

C.WHERE

D.WITH

21.SQL语句

SELECT s.sno,sname,cno,grade

FROM s, sc

WHERE sex=?女?and s.sno=sc.sno

则该语句对student和sc执行的操作有。

A.交(∩),选择(σ)和投影(π)

B.自然连接,选择(σ)和投影(π)

C. 并(∪),选择(σ)和投影(π) D)并(∪),笛卡儿积(×)和选择(σ)

22.事务的ACID性质中,关于原子性(atomicity)的描述正确的是。

A. 指数据库的内容不出现矛盾的状态。

B. 若事务正常结束,即使发生故障,更新结果也不会从数据库中消失。

C. 事务中的所有操作要么都执行,要么都不执行。

D. 若多个事务同时进行,与顺序实现的处理结果是一致的。

23.事务对DB的修改,应该在数据库中留下痕迹,永不消逝。这个性质称

为事务的。

A.原子性B.一致性

C.隔离性D.持久性

24.要在SQLServer中创建一个员工信息表,其中员工的薪水、医疗保险和

养老保险分别采用三个字段来存储,但是该公司规定:任何一个员工,医

疗保险和养老保险两项之和不能大于薪水的1/3,这一项规则可以采用

来实现。

A.主键约束

B. 外键约束

C. 检查约束

D. 默认约束

25.“日志”文件用于保存。

A.程序运行过程B.数据操作

C.程序执行结果D.对数据库的更新操作

26.为了防止一个用户的工作不适当地影响另一个用户,应该采

取。

A 完整性控制

B 安全性控制

C 并发控制

D 访问控制

27.要在SQLServer中创建一个员工信息表,其中员工的薪水、医疗保险和

养老保险分别采用三个字段来存储,但是该公司规定:任何一个员工,医疗保险和养老保险两项之和不能大于薪水的1/3,这一项规则可以采用来实现。

A.主键约束

B. 外键约束

C. 检查约束

D. 默认约束

28.在DB技术中,“脏数据”是指。

A.未回退的数据B.未提交的数据

C.回退的数据D.未提交随后又被撤销的数据

29.用于创建存储过程的SQL语句为。

A.CREATE DATABASE

B.CREATE TRIGGER

C.CREATE PROCEDURE

D. CREATE TABLE

30.用于存储过程修改的SQL语句为。

A.ALTER DATABASE

B. ALTER DATABASE

C. ALTER TRIGGER

D.ALTER PROCEDURE

31.删除触发器mytri的正确命令是。

A.DELET mytri

B.TRUNCATE mytri

C.DROP mytri

D. REMMOVE mytri

32.SQL Server2008中查看触发器定义的是。

A.exec sp_help '触发器名'.

B. exec sp_helptext '触发器名'.

C. exec sp_depends '触发器名'.

D. exec sp_depends '表名'

33.设有关系模式R(ABCD),R上的FD集F={A→D,B→C,D→B}。则

D+= 。

A.AD B.BD

C.BCD D.ABCD

34.两个函数依赖集F和G等价的充分必要条件是。

A.F+= G B.F= G+

C.F+= G+D.F= G

F+表示F的闭包,是指逻辑蕴涵所有函数依赖的集合

35.在以下函数依赖中,是平凡的函数依赖。

A.A→ABCD B.ABCD→A

C.A→BCD D.BCD→A

36.若有关系模式:R(课程编号,课程名称,学号,姓名,分数),且一名

学生可选多门课,一门课程有多名学生选,则R属于。

A.1NF B.2NF

C.3NF D.4NF

37.设K为关系模式R中的属性或属性组合,若U完全函数依赖K,

则K称为R的一个________。

A. 关键字

B. 候选键

C. 主属性

D. 主属性值

38.从ER模型向关系模型转换时,一个M:N联系转换为关系模式时,该关

系模式的主键是。

A.M端实体的标识符;

B. N端实体的标识符;

C.M端和N端实体的标识符组合;

D.重新选其他的属性。

39.弱实体的主键。

A.与其父实体的主键完全一致B.一部份或全部从其父实体的主键获得C.全部从其父实体的非主键属性获得D.与其父实体无关

弱实体的主体是由该弱实体所存在依赖的强实体的主键和该弱实体的分辨符共同构成。

40.在数据库设计中,父实体与弱实体之间的联系只能是。

A.1:1或1:N B.1:N 或M:N

C.1:1或M:N D.M:N

41.当局部E-R图合并成全局E-R图时,可能出现冲突,下面所列举的冲突

中不属于上述冲突。

A. 属性冲突

B. 语法冲突

C. 结构冲突

D. 命名冲突

各分E-R图之间的冲突主要有3类:属性冲突、命名冲突和结构冲突。属性冲突包括属性域冲突和属性取值单位冲突。命名冲突包括同名异义和异名同义冲突。结构冲突包

括同一对象在不同应用中具有不同的抽象,同一实体在不同分E-R图中所包含的属性个数和属性排列次序不完全相同。

42.不是ODBC使用的句柄。

A. 环境句柄B.窗口句柄

C.连接句柄D.语句句柄

43.ODBC体系结构中,向数据源提交用户请求执行的SQL语句。

A.ODBC数据库应用程序B.驱动程序管理器

C.DB驱动程序D.数据源

44.在XPath中,使用符号可以访问属性值。

A.* B.&

C.@D.%

36. 以下关于XML文档声明的语句正确的是。

A.

B.

C.

D.

37. xml 提供了一种避免元素命名冲突的方法

A. 命名空间

B. dtd

C.xsd

D.xsl

38. 含有中文字符的xml文档中,encoding的属性应设为

A.big5

B.gb2312

C.utf-8

D. ansi

39. 下面哪个不是标记语言

A. JA V A

B. HTML

C. XML

D. SGML

40. 在XPath中,使用函数可以返回元素的内容。

A.count() B.text()

C.value() D.element()

40. XPath是

A. XML的路径语言

B. XML的转化

C. 文档对象模型

D. XML命名空间

二、填空题

1.DBMS的基本工作单位是事务,它是用户定义的一组逻辑一致的程序序

列,并发控制的主要方法是封锁(locks)机制。

2.数据库设计的几个步骤是需求分析,概念设计,逻辑设计,物理设计,

编码和测试。

3.视图是一个虚表,它是从一个或几个基本表导出的表,数据库中,只存

放视图的定义,不存放视图的对应数据。

4.DB并发操作通常会带来三类问题,它们是丢失更新,不一致分析和读脏

数据。

5.事务必须具有的四个性质是原子性,一致性,隔离性,永久性。

6.一级封锁协议解决了事务的并发操作带来的数据丢失修改不一致性的问

题。

7.一个触发器由触发事件或语句、触发限制和触发器动作3部分组成。

8.DBS具有“数据独立性”特点的原因是采用三级模式结构。

9.关系中属性的个数称为元数,关系中元组的个数称为基数。

10.在关系模式R中,函数依赖X→Y的语义是:在R的每一关系中,若两

个元组在X的分量上相等,则Y值也相等。

11.关系模式在分解时应保持等价,数据等价用无损分解特征来衡量,语义

等价用保持依赖特征来衡量。

12.一个关系模式为Y(X1,X2,X3,X4),假定该关系存在着如下函数依

赖:X1→X2,X1→X3,X3→X4,则该关系属于第二范式,因为它存在着函数传递依赖。

13.根据属性类别属性可分为简答属性和复杂属性。

14.根据属性的取值特点属性可分为单指属性和多指属性。

15.子类与超类之间的继承性是通过子类实体与超类实体有相同的实体标识

符实现的。

16.要使数据库具有可恢复性,在平时要做好两件事:转储和建立日志。

17.XML能够通用化,主要依靠两个措施:一是可自由扩充的标志,二是独

立于文档的格式单。

18.XML文档由序言和文档实例两个部分组成。

19.XML文档中,元素的结构是<元素名>元素内容

20.在XML文档中,属性一律放在开标签。

21.在XML模式中,主键定义括在之中,外键定义括在

之中。

22.在XPath中,可以使用text()函数返回元素的内容。

23.一个简单的XSLT模板包含匹配部分和选择部分两个部分。

24.设关系模式R(ABCDE),F是R上成立的FD集,F={ A→B,CE→A,B

→D},ρ={AB,BD,ACE}是R的一个分解。则分解ρ相对于F是损失分解和保持依赖的。

25.系统存储过程sp_helptext是用来显示规则,默认值,未加密的存储过程,

用户定义函数、触发器和视图的文本。

26.触发器可以划分为3种类型:insert触发器、delete触发器、update触发

器。

27.触发器定义在一个表中,当在表中执行insert、delete或update时,触

发器被自动执行。

28.标准SQL中触发器有两个重要的临时表,当有数据修改时,修改前的内

容存放在Delete表中,修改后的内容存放在Inserted表中。//按照课本标准SQL,还是按照实验中微软的T-SQL?

29.XML Schema的数据类型分为简单类型,复合类型。

30.XML对字母的大小写敏感,是完全不同的两个

标签。

31.为了解决不同语义的标签名称的冲突问题,引入了本体解决信息集成中

的语义冲突问题。

32.在SQL中,测试列值是否为空值用ISNULL运算符号,测试列值是否为

非空值用EXISTS#EXIS#EXIST运算符号。

33."学院"表

系号系名

01 英语

02 会计

03 工商管理

使用SQL语句完成如下操作(将所有教授的工资提高5%)

UPDATE教师SET 工资=工资*1.05 WHERE职称="教授

34.如果要使用SELECT语句返回指定条数的记录,则应使用TOP关键字来

限定输出字段。

35.关系模式R(A,B,C),F是其上的FD集,F={B→C},分解ρ={AB,BC},则相

对于F,该分解是无损的。

36. 三类经典的数据模型是层次模型、网状模型和关系模型。其中,关系模

型目前应用最广泛。

37. 概念模型模型是面向信息世界的,它是按用户的观点对数据和信息建

模;数据模型模型是面向计算机世界的,它是按计算机系统的观点对数据建摸。

38. 关系模型的实体完整性规则是指主属性的值不能为空。在关系模型中,

主键是指用户正在使用的候选键,外键是指在一个关系中的一个或一组属性是另一个关系的主键。

39.数据依赖是关系中属性间的相互关联,最重要的数据依赖有两种,即函

数依赖和多值依赖。

40.在关系规范化过程中,将1NF转化为2NF,要消除一般属性对主键的部分

依赖,若一个关系模式R∈2NF,并且消除了非主属性对候选键的传递依赖,则R∈3NF。

41.调用ODBC函数需要使用3个句柄,分别是:环境、连接、语句。

42.封锁技术中主要由2种封锁:排它锁和共享锁。

43. SELECT语句中进行查询,若希望查询的结果不出现重复元组,应在

SELECT子句中使用Distinct保留字。

44. SQL语言分为数据操纵语言(DML)、数据定义语言(DLL)、数据控制语

言(DCL)和数据查询语言(DQL)。

45. 在成绩表中,只显示分数最高的前10名学生的记录,SQL语句为:

SELECT * TOP 10 FROM 成绩表ORDER BY 总分 DESC 。

46. 在SELECT-SQL语句中,表示条件表达式用WHERE子句,分组用GROUP

BY子句,排序用ORDER BY子句。

47.在SQL Server中有两类登录帐户:一类是登录服务器的登录帐户,另一

类是使用数据库的用户帐户。

48.在SQL Server中有四种备份类型,分别为:完整数据库备份、

备份、差异数据库备份、事务日志备份、文件组备份

三、简答题

1.DBMS的主要功能有哪5个方面?

答:数据库定义功能;数据存取功能;数据库运行管理;数据库的建立

和维护功能。

2.叙述等值连接和自然连接的区别和联系。

答:等值连接表示为R>

复属性的等值连接。

I自然连接一定是等值连接,但等值连接不一定是自然连接。

II.等值连接要求相等的分量,不一定是公共属性;而自然连接要求相

等的分量必须是公共属性。

III.等值连接不把重复的属性除去;而自然连接把重复的属性除去。

答案二:连接运算符是“=”的连接运算成为等值连接。它是从关系R与S

的广义笛卡尔积中选取A,B属性值相等的那些元组。

自然连接时一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。

3.在数据库系统中有如下一个调度S,它涉及到3个不同的事务T1、T2

和T3。请问调度S是冲突可串行化的吗?为什么?如果调度S是冲突

2015-2016数据库期末复习题(带答案)

有向环

2015-2016数据库期末复习题(带答案)

4.对DBS生存期的划分,一般分为哪7个阶段。

答:规划、需求分析、概念分析、逻辑分析、物理设计、实现和运行维护。

5.函数依赖集F的最小依赖集G应满足哪4个条件?

答:(1)F+=G+;(2)G中的每个FD的右边都是单属性。(3)G中没有冗余的FD,即G中不存在这样的函数依赖X-Y,使得G-{X-Y}与G 等价。(4)G中每个FD的左边没有冗余的属性,即G中不存在这样的函数依赖X-Y,X有真子集W使得G-{X-Y}U{W-Y}与G等价。

6.事务有哪几种状态?

答:活动状态、局部提交状态、失败状态、异常中止状态、提交状态。

7.ODBC的体系结构共分为哪几层?

答:应用程序、驱动程序管理器、DB驱动程序、数据源。

8.ODBC驱动程序有哪两种类型?主要区别是什么?

答:驱动程序有两种类型:单层驱动程序和多层驱动程序。单层驱动程序中包含了数据库引擎,需要解释执行SQL 语句。在网络中传输的是整个数据库文件,所以网络的数据通信量很大。多层驱动程序中没有包含数据库引擎,将SQL 语句传递给数据源服务器,由DBMS 解释执行。因此在网络中传输的只是用户请求和数据库处理的结果,从而使网络的数据通信量大大减少,减轻了网络的负担,均衡了服务器和客户机的负载,提高了应用程序的运行效率。

9.ODBC应用程序初始化的基本流程是什么?

答:分配环境句柄→分配连接句柄→与服务器连接→分配语句句柄。10.ODBC应用程序终止的基本流程是什么?

答:与服务器断开→释放语句句柄→释放连接句柄→释放环境句柄

11.ODBC句柄有哪三个?

答:环境句柄,连接句柄,语句句柄。

12.JDBC的总体结构由哪4部分组成?

答:JDBC的总体结构由Java程序、JDBC管理器、驱动程序和数据库四部分组成。

13.JDBC驱动程序有哪4类?

答:JDBC驱动程序有四类:本地库Java驱动程序,独立于DBMS的网络协议驱动程序,DBMS协议Java驱动程序,JDBC-ODBC桥驱动程序。

14.JDBC API主要完成哪三项任务?

答:(1)同一个数据库建立连接;(2)向数据库发送SQL语句;(3)处理数据库返回结果。

15.简述在DTD的属性声明中,类型声明的5种类型和默认声明的3种类型。

答:类型声明的5种类型:(1)PCDATA或CDATA;(2)ID;(3)IDREF 或IDREFS;(4)ENTITY或ENTITIES;(5)枚举类型。默认声明的3种类型:(1)#IMPLIED;(2)#REQUIRED(3)#FIXED

16.现在主要有哪三种语言提供了XML数据的查询和转换能力?

答:XPath、XSLT、XQuery。

17.什么是Inserted表?什么是deleted表?

答:Inserted表:当向表中插入数据时,INSERT触发器触发执行,新的记录插入到触发器表和inserted表中。 Deleted表:用于保存已从表中删除的记录,当触发一个DELETE触发器时,被删除的记录存入deleted 表中。

18.简述XML Schema支持的数据类型?

答:1.原生数据类型和派生数据类型。2.自定义简单数据类型。3.自定义复杂数据类型

19.简述数据库系统的三级抽象结构。

答:三级模式结构:外模式、模式和内模式

优势:为了减少数据冗余,实现数据共享;为了提高存取效率,改善性能20.简述封锁机制可能会产生的哪几类问题?

答:活锁,系统可能使某个事务永远处于等待状态,得不到封锁的机会;

饿死,有可能出现事务永远轮不上封锁的机会;死锁:两个或两以上的事务同时处于等待状态,需要其中一个解锁,其他事务才能继续执行,结果导致所有事务都不能执行。

21.什么是E-R图?E-R图的基本要素是什么?

答:E-R图:E-RE-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。

E-R图基本要素:实体型、属性和联系。

22.并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致

的情况?

答:并发操作带来的数据不一致性包括三类,丢失修改、不可重复读和读“脏”夕数据。

避免不一致性的方法和技术就是并发控制。最常用的技术是封锁技术。

也可以用其他技术,例如在分布式数据库系统中可以采用世界戳方法来进行并发控制。

23.数据库恢复的基本技术有哪些?

答:数据转储和登录日志文件是数据库恢复的基本技术。当系统运行过程中发生故障,利用转储的数据库后备副本和日志文件就可以将数据库恢复到故障前的某个一致性状态。

24. 简述中间件的作用有哪些?

答:使用系统软件所提供的基础服务(功能),衔接网络上应用

系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。25. 简述日志文件的主要作用?

答:事务日志记录每个事务的开始。它记录了在每个事务期间,对数据的更改及撤消所做更改(以后如有必要)所需的足够信息

26. 试述Select语句中Where与having 的相同点与不同点(区别)。

答:答:类似处:都是筛选数据。

不同之处:

(1)使用的前提不同:where条件可以随意使用,having条件只能在分组group by中出现。

(2)作用的对象不同:where 条件作用于整个表,从中选择满足条件的元组;而having只作用于每个组,从中选择出满足条件的组。

(3)Having条件必须是描述分组性质的属性。

27. 请简述视图与数据表之间的主要区别.

答:

联系:视图(view)是在基本表之上建立的表,它的结构(即所定义的列)和内容(即所有数据行)都来自基本表,它依据基本表存在而存在。一

个视图可以对应一个基本表,也可以对应多个基本表。视图是基本表的

抽象和在逻辑意义上建立的新关系。

区别:1、视图是已经编译好的sql语句。而表不是。2、视图没有实际的物理记录。而表有。3、表是内容,视图是窗口。4、表只用物理空间而视

图不占用物理空间,视图只是逻辑概念的存在,表可以即时对它进行修

改,但视图只能有创建的语句来修改5、表是内模式,视图是外模式。6、

视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数

据,只是一些SQL语句的集合。从安全的角度说,视图可以不给用户

接触数据表,从而不知道表结构。7、表属于全局模式中的表,是实表;

视图属于局部模式的表,是虚表。8、视图的建立和删除只影响视图本

身,不影响对应的基本表。

28. 试述关系模型的三类完整性规则,并说明具体使用什么来实现.

答:

1)实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空

值。

2)参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本

关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则

对于R中每个元组在F上的值必须为:等于S中某个元组的主码值或者

取空值(F的每个属性值均为空值);

3)用户定义的完整性: 是针对某一具体关系数据库的约束条件。它反映某一

具体应用所涉及的数据必须满足的语义要求。

29. 在SQL Server中,写出在查询分析器中使用T-SQL语言删除数据库中的

表DROP命令与删除数据的命令DELETE两者之间的区别,并分别用代

码举例说明。

答:

区别:drop是DDL(数据定义语言)自动commit,隐式提交,无法回滚delete是DML(数据操作语言)显示提交,需要手工commit,可以回

滚。

例子:DROP TABLE 学生物理删除,删除指定表的结构和内容(包括在此表上建立的索引)。

DELETE 学生逻辑删除,即在删除的记录前加上一个删除标记,但没有从物理上删除;只删除一个表中的所有记录,但表结构还存

在。

四、综合题

1.设有关系学生(学号,姓名,年龄,所在系),

课程(课程名,课程号,先行课),

选课(学号,课程号,成绩)

用关系代数表达如下查询

1)、求学过数据库技术课程的学生的姓名和学号。

2)、求没有学过数据库技术课程的学生学号。

3)、求学过数据库技术先行课的学生学号。

2.已知一个“图书发行信息管理系统”的数据库模式,定义了图书馆、图书、

书店的信息,同时也给出了书店向图书馆发行图书的信息,其中,

图书馆L(LNO,LNAME,CITY,TEL)

图书B(BNO,BNAME,PRICE)

书店S(SNO,SNAME,ADDRESS)

图书发行LBS(LNO,BNO,SNO,QTY)

请用关系代数描述下列查询

1)、查询所有图书的书名和半价

2)、查询图书馆L1从书店S1购买的图书书号

3)、查询收藏图书《Visual C++》的图书馆名

4)、查询已发行图书中定价在20元以上的书名

3.上题中,请用SQL描述下列操作

1)、查询北京市的图书馆数量

2)、查询书店S3发行的图书书名

3)、查询收藏了图书B1、B2的图书馆名

4)、查询每个书店的一次发行量的最大值

4.设有如下实体

学生:学号、单位、姓名、性别、年龄、选修课程名

课程:编号、课程名、开课单位、任课教师号

教师:教师号、姓名、性别、职称、讲授课程号

单位:单位名称、电话、教师号、教师名

上述实体中存在如下联系

(1)一个学生可以选修多门课程,一门课程可以为多个学生选修;

(2)一个教师可以讲授多门课程,一门课程可以为多个教师讲授;

(3)一个单位可以有多个教师,一个教师只能属于一个单位。

试完成如下工作:

(1)分别设计学生选课和教师任课的两个局部ER图模型。

(2)将上述设计的局部ER图合并为全局的ER图。

(3)将全局ER图转换为等价的关系模式的数据库逻辑结构。

5.图书出版管理数据库中有两个基本表:图书(书号,书名,作者编号,

出版社,出版日期);作者(作者编号,作者名,年龄,地址)。试用SQL 语句写出下列查询:检索年龄低于作者平均年龄的所有作者的作者名.书名和出版社。

6.设有关系S(S#,SNAME,AGE,SEX)、SC(S#,C#,SCORE)、

C(C#,CNAME,TEACHER),试用关系代数和SQL完成如下操作

(1)用关系代数表达检索选修了“程军”老师所授课程之一的学生姓名。

(2)用关系代数表达至少选修了S2和S4课程的学生的学号和姓名。

(3)用SQL表达找出“程序设计”课程成绩在90分以上的学生。

7.设有关系模式R(U),函数依赖集为F,其中

U={A,B,C,D,E},F={A→BC,CD→E,B→D,E→A}

(1)计算B+,并给出计算步骤。

(2)证明CD是R的候选键

(1)解答:令X={B},X(0)={B},由B→D ,且B∈X(0),X(1)=X(0)?{D}={BD},

由A→BC,CD→E,E→A函数依赖的左部都不在X(1)中,所以

B+={BD}

(2)证明:由已有的函数依赖得:CD→U,所以,CD是超键,又由于

C+=C,D+=D,所以C和D都不是超键,因此,CD是候选键。

8.设有关系模式STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE)

S#,CNAME组成候选键,函数依赖集合为

F={

S#, CNAME→SNAME, SDEPT, MNAME

S#→SNAME, SDEPT, MNAME

S#, CNAME→GRADE

SDEPT→MNAME

}

试问:

(1)关系模式STUDENT属于第几范式?给出理由。

(2)如果STUDENT不属于BCNF,试给出分解为BCNF的过程

解答:

(1)由于S#,CNAME→SDEPT, 和S#→SDEPT,所以,存在非主属性局部

依赖于候选键,所以关系模式不是2NF的,它是1NF的。

(2)首先消除S#, CNAME→SNAME, SDEPT, MNAME部分函数依赖,

构造R1(S#,SNAME, SDEPT, MNAME)和R2(S#,SNAME, GRADE)

在关系R1中,其函数依赖为

S#→SNAME, SDEPT, MNAME

SDEPT→MNAME

这里有非主属性MNAME传递依赖于候选键S#,将R1分解为

R11(SDEPT, MNAME)和R12(S#, SNAME, SDEPT),它们和R2都是

BCNF

9.假设某商业集团数据库中有一关系模式R如下:

R (商店编号,商品编号,数量,部门编号,负责人)

如果规定:

(1)每个商店的每种商品只在一个部门销售;

(2)每个商店的每个部门只有一个负责人;

(3)每个商店的每种商品只有一个库存数量。

试回答下列问题:

(1) 根据上述规定,写出关系模式R 的基本函数依赖;

(2) 找出关系模式R 的候选码;

(3) 试问关系模式R 最高已经达到第几范式?为什么?

(4) 如果R 不属于3NF ,请将R 分解成3NF 模式集。

10. 设有关系EMP (ENO ,ENAME ,SALARY ,DNO ),其中各属性的含义

依次为职工号.姓名.工资和所在部门号,以及关系DEPT (DNO ,DNAME ,MANAGER ),其中各属性含义依次为部门号.部门名称.部门经理的职工号。回答以下各题

(1)试用SQL 语句完成以下查询:

列出各部门中工资不低于600元的职工的平均工资。

(2)写出“查询001号职工所在部门名称”的关系代数表达式。

(3)请用SQL 语句将“销售部”的那些工资数额低于600的职工的工资上调10%。

(4)有如下关系代数表达式

'001'((()))ENO MANAGER EMP DEPT σ=∏

请将其转化成相应的SQL 语句。

11. 设零件生产数据库中有3个基本表:

WORK(WNO,WNAME,WGR_NAME),其属性分别是车间编号、车间名称、车间主任名;

PART(PNO,PNAME,WEIGHT,COLOR),其属性分别是零件编号、零件名称、重量、颜色;

PROD(WNO,PNO,QUNTITY),其属性分别是车间编号、零件编号、生产数量。

(1) 现有关系代数表达式:

ΠWNO (WORK)- Π WNO (σ P NAME=…轴承?(PART PROD))

试给出此查询语句的语义;

(2) 试给出检索在“紧固件1车间”生产的零件的零件名称的关系代数表达式;

(3) 试用SQL 语句定义WORK 表,需说明主键;

(4) 试用SQL 语句在关系PART 中删除零件名称为“弹簧”的元组;

(5) 试用SQL 语句定义视图G_PTOTAL(PNO,PROD_T),其中属性分别为零件编号和生产总量。

12. 设关系模式R(ABCDE),F 是R 上成立的FD 集,F={ A →B ,CD →E ,B

→D },ρ={AB ,AD ,CDE}是R 的一个分解。

(1) 试用Chase 过程说明ρ是否是无损分解;

(2) 试求F 在ρ的每个模式上的投影,并说明ρ是否保持依赖。

13. 设关系模式R(ABCDE),F 是R 上成立的FD 集,F={ A →B ,CE →A ,B

→D },ρ={AB ,BD ,ACE}是R 的一个分解。

(1) 试用Chase过程说明ρ是否是无损分解;

(2) 试求F在ρ的每个模式上的投影,并说明ρ是否保持依赖。

14.设有关系模式R(演员编号,演员姓名,电影名,出演角色,艺术团名,

团长名),如果规定每个演员编号各不相同,演员姓名可以相同,一个演员可参演多部电影,各出演一个角色;每个演员只能属于一个艺术团;

每个艺术团只有一个团长。

(1) 试写出关系模式R的基本FD和主键;

(2) 说明R达到第几范式,并说明理由;

(3) 如果R不是3NF模式,请将R分解为3NF模式集。

15.设体育比赛数据库中有两个实体集。一是“运动员”实体集,属性有运

动员编号、姓名、年龄、性别等;二是“比赛项目”实体集,属性有项目编号、项目名称、级别等。一个运动员可参加多项比赛,一项比赛有多个运动员参加,一个运动员在某个时间参加一项比赛有一个比赛成绩。

(1) 画出ER图,并在图上注明属性、联系类型、实体标识符;

(2) 将ER图转换成关系模型,并说明主键和外键。

16.创建学生表Student (sno, sname, sage, ssex, sdept), 列出与95001同岁的同

学的学号,姓名,年龄。加入课程表Course(cno,cname,credit), 学生选课表SC(sno, cno, grade), 查询选修…C01?课程的学生的学号.姓名。找出年龄最小的学生。

17.现有一系统,需要一个杂费管理的B/S方式的模块。模块要求后台页面

可以增加删除费用类型(餐饮费,燃油费,保险费,电费,水费……),并根据费用类型按照日期管理各笔费用,记录每笔费用产生原因(例如:对于某笔燃油费,记录原因为“去长春调研”),具有查询,删除,修改,添加功能。试设计数据库表结构并用SQL语句表达“2009年度电费总费用”。

数据库表结构

杂费信息表

2015-2016数据库期末复习题(带答案)

杂费类型表

2015-2016数据库期末复习题(带答案)

2015-2016数据库期末复习题(带答案)

SQL语句表达“2009年度电费总费用”

select sum(费用) as '2009年电费总费用'

from 杂费信息,杂费类型

where year(产生时间)='2009' and 杂费名称='电费'

18.写出下列每条语句或程序段的功能,假定数据库AAA,包括student和score两张

表。

(1)create procedure xxx1

as

begin

select *

from student x, score y

where x.S#=y.S.#

end

(2) create procedure xxx2

As

Begin

Select x.S#,x.SNAME,count(*) as 门数

Where x.S#=y.S#

Group by x.S#,x.SNAME

End

(3) ceate procedure xxx3

(@a char(8), @b varchar(10), @c numeric(5,2))

As

Begin

Insert into score

Values(@a,@b,@c)

End

16.创建存储过程,功能是查询性别为男的学生的学号,姓名,性别

17.创建存储过程,功能是查询指定学生的学号,姓名,性别和班级,姓名由参数传递

18.创建存储过程,功能是查询某门课程的学生成绩,显示学号,姓名,课程名,成绩,并将成绩转换为等级制。课程名由参数传递。

19.创建存储过程,功能是查询某门课程的总分和平均分,将返回参数。课程名由参数传递。

20.创建触发器,功能是当删除学生表的记录时,同步删除选课表中的选课信息。

21. 写出这个模式文档所对应的XML文档

22.分析下列XML实例,编写外部DTD文档。

<学生名册>

<学生学号=“Z1”别名=“张小”>

<姓名>张华

<性别>女

<年龄>27