计算机2009级数据库原理及应用总复习_第1页
计算机2009级数据库原理及应用总复习_第2页
计算机2009级数据库原理及应用总复习_第3页
计算机2009级数据库原理及应用总复习_第4页
计算机2009级数据库原理及应用总复习_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库原理及应用复习题适用于计算机科学与技术专业2009级(仅供复习参考之用 切莫据此作为复习依据 不对由此产生后果负责)一、单项选择题1. 在数据库中,产生数据不一致的根本原因是_。A 数据存储量太大 B 没有严格保护数据C 未对数据进行完整性控制 D 数据冗余2. 设关系R和S的结构相同,并且各有80个元组,假如这两个关系作交运算, 其运算结果的元组个数为 ( )A. A.80 B.小于等于80 C.大于等于160 D.大于等于80,小于等于1603. SQL语言具有两种使用方式,它们在使用的细节上会有些差别,特别是SELECT语句。这两种不同使用方式的SQL,分别称为交互式SQL和()

2、A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL4. 下列关于索引的叙述,正确的是()。A 可以根据需要在基本表上建立一个或多个索引,从而提高系统的查询效率B 一个基本表最多只能有一个索引C 建立索引的目的是为了给数据表中的元素指定别名,从而使别的表也可以引用这个元素D 一个基本表上至少要存在一个索引5. 有2个关系模式R(A,B,C)和S(D,E),R中有3个元组,S中有2个元组,则R和S笛卡尔积后得到的新关系中,属性个数及元组个数分别为()A.5,5 B.5,6 C.6,5 D.6,66. 数据库系统中的数据模型通常由()三部分组成 A.数据结构、数据操作和完整性约束

3、 B.数据定义、数据操作和安全性约束 C.数据结构、数据管理和数据保护 D.数据定义、数据管理和运行控制7. 设有一个关系:DEPT(DNO,DNAME),如果要找出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHERE DNAME LIKE A. _ _ W _ % B. _ % W _ _ C. _ W _ _ D. _ W _ %8. 有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于( ) A. 实体完整性约束 B. 参照完整性约束 C. 用户自定义完整性约束 D. 关键字完整性约束9. 在关系模式R(U,F)中,R中

4、任何非主属性对键完全函数依赖是R3NF的() A.充分必要条件 B.必要条件 C.充分条件 D.既不充分也不必要条件 10. 如果事务T获得了数据对象R上的排它锁,那么( )A.T对R只能读不能写 B.T对R只能写不能读 C.其它事务对过R只能读不能写 D.其它事务对R既不能读也不能写11. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是_。ADBS包括 DB和DBMS BDBMS包括DB和DBSCDB包括 DBS和 DBMS DDBS就是DB,也就是DBMS12. 能够消除冗余的键的范式是 ( )A. A.2NFB.3NFC.4NFD. BCNF13. 在数

5、据操作语言(DML)的基本功能中,不包括的是 ( ) A.插入新数据B.描述数据库结构C.对数据库中数据排序D. 删除数据库中数据14. 设关系模式R (A,B,C),F是R上成立的FD集,F = BC,则分解 = AB,BC相对于F ( )A.是无损联接,也保持FD的分解B.是无损联接,但不保持FD的分解C.不是无损联接,但保持FD的分解D.既不是无损联接,也不保持FD的分解15. 数据库的并发控制,完整性检查,安全性检查等是对数据库的() A.设计 B.保护 C.操纵 D.维护 在数据库设计中, 16. 在数据库设计中,将ER图转换成关系数据模型的过程属于()A需求分析阶段 B. 概念设计

6、阶段C逻辑设计阶段 D. 物理设计阶段17. SQL语言中,条件“年龄BETWEEN 20 AND 30”表示年龄在20至30之间,且( ) A. 包括20岁和30岁 B.不包括20岁和30岁 C.包括20岁但不包括30岁 D.包括30岁但不包括20岁18. 如果事务T获得了数据项Q上的排它锁,则T对Q () A. 只能读不能写 B. 只能写不能读 C. 既可读又可写 D. 不能读不能写19. 设一个科研项目只能由一个研究组承担,而一个研究组可承担多个项目。 则项目与研究组之间是()A.一对一的关系 B.一对多的关系C.多对一的联系 D.多对多的联系20. 函数依赖是描述关系中各个属性之间相互

7、制约而又相互依赖的关系。确定属性间的函数依赖,要根据()A.当前的数据值归纳 B.主键值决定 C.候选键值决定 D.属性的语义决定二、填空题1 数据库技术主要研究如何科学地组织和存储数据、高效地获取和处理数据,是数据管理的最新技术,是计算机科学与技术的重要分支。2 一般地,一个数据库的数据模型由数据结构、数据操作和数据的约束条件三部分组成。3 一个低一级的关系范式通过模式分解可以转换为若干个高一级范式的关系模式的集合,这个过程称为关系模式的规范化。4 一般来讲,对数据库的操作权限包含隐含特权、系统特权和对象权限。5 利用游标进行数据查询需要4种语句:说明游标、打开游标、推进游标和关闭游标语句。

8、6 数据库的保护主要包括数据库的完整性、安全性、并发控制和数据库恢复等4方面的任务。7 在SQL语言中,参照完整性通过FOREIGN KEY约束来定义。8 SQL SERVER 2005提供了种数据库备份与恢复方式,分别是:全库备份、日志备份、差异备份和文件、文件组备份。9 SQL SERVER 2005的数据文件包括主数据文件、二级数据文件和事务日志文件三种。并发控制的主要方法是采用封锁机制。10 一般地,一个数据库的数据模型由数据结构、数据操作和数据的约束条件三部分组成。11 一般来讲,对数据库的操作权限包含隐含特权、系统特权和对象权限。12 数据库的保护主要包括数据库的完整性、安全性、并

9、发控制和数据库恢复等4方面的任务。13 SQL SERVER 2005的数据文件包括主数据文件、二级数据文件和事务日志文件三种。14 设有关系模式R(X,Y,Z),F=XY,YZ,则R的候选键是 X 。15 事务并发执行会带来诸如丢失更新、不一致分析、未提交依赖等问题。16 关系模式是静态的、稳定的,而关系是动态的随时间不断变化的。因为关系操作在不断地更新着数据库中的数据。17 触发器是一类特殊的存储过程,它不允许带参数,也不能被直接调用,只能由系统自动激活。18 在三大传统的数据模型中,具有严格的数学理论基础的是关系模型。19 1SQL Server的安全性控制策略包括四个方面:操作系统的安

10、全性、 服务器的安全性 、 数据库的安全性 和 表和列级的安全性 。20 2SQL Server 2005 的身份验证模式有两种,分别是 Windows身份验证模式 和 SQL Server和Windows身份验证模式 身份验证模式。三、问答题1) 简述数据库设计的步骤以及每个步骤的任务。 1) 需求分析 分析客户的业务和数据处理需求形成DFD、DD需求分析说明书。2) 概念结构设计 设计数据库的E-R模型图,确认需求信息的正确和完整。3) 逻辑结构设计 将E-R图转换为多张表,进行逻辑设计,并应用数据库设计的三大范式进行审核。4) 物理结构设计 数据库物理设计是为逻辑数据模型选取一个最适合应

11、用环境的物理结构,包括存储结构和存取方法。5) 数据库实施 根据逻辑设计和物理设计的结果,在计算机系统上建立起实际数据库结构、装入数据、测试和试运行的过程称为数据库的实施阶段。实施阶段主要有三项工作。6) 数据库运行和维护 数据库系统正式运行,标志着数据库设计与应用开发工作的结束和维护阶段的开始。 2) 使用视图的优点? 1) 能够将对数据库的访问限制在一定范围内,有利于数据保密。2) 视图机制使不同的用户能以不同的方式看待同一数据,当许多不同种类的用户使用同一个集成数据库时,这种灵活性非常重要。3) 简化了用户观点。4) 视图对于数据库的重构提供了一定程度的逻辑独立性。3) 试分析语句DRO

12、P Table A 与DELETE FROM A之间的差别。 1) DROP Table A的作用是注销基本表A,操作完成后,表A的结构定义和其中存储的数据将完全消失;2) DELETE FROM A的作用是删除表A存储的全部数据,操作完成后,表A的结构定义仍然存在,但其中存储的数据将完全消失。4) 事务的并发执行可能带来哪些问题? 1) 丢失更新(丢失修改)2) 不一致分析(不可重复读)3) 未提交依赖等问题(读“脏”数据)5) 术语解释:3NF 对于一个给定的关系模式R,若R的每一个非主属性既不部分函数依赖于候选码也不传递函数依赖于候选码,则R3NF。6) 存储过程与触发器有什么不同? 1

13、) 触发器是特殊的类型的存储过程,它能在任何试图改变表中由触发器保护的数据时执行。2) 触发器主要通过事件进行触发而被执行,触发器不能直接调用执行,也不能被传送和接受参数,而存储过程可以通过存储过程名被直接调用。触发器与表有关,存储过程与表无关。7) 简述事务的四个特性及其含义。 事务具有四个特征:原子性( Atomicity )、一致性( Consistency )、隔离性( Isolation )和持续性( Durability )。这四个特性简称为 ACID 特性。1) 原子性 :事务是数据库的逻辑工作单位,事务中包含的各操作要么都做,要么都不做 。2) 一致性 :事务执行的结果必须是使

14、数据库从一个一致性状态变到另一个一致性状态。3) 隔离性 :一个事务的执行不能其它事务干扰。即一个事务内部的操作及使用的数据对其它并发事务是隔离的,并发执行的各个事务之间不能互相干扰。4) 持续性:也称永久性,指一个事务一旦提交,它对数据库中的数据的改变就应该是永久性的。接下来的其它操作或故障不应该对其执行结果有任何影响。8) 试述关系模式规范化的基本步骤(从1NF规范化到BCNF)。 9) 什么是视图?它和表有什么区别?1) 视图是由一个或多个数据表(基本表)或视图导出的虚拟表或查询表,是关系数据库系统提供给用户以多种角度观察数据库中数据的重要机制。2) 视图是虚表。所谓虚表,就是说视图不是

15、表。因为视图只储存了她的定义(select语句),而没有储存视图对应的数据,这些数据仍存放在原来的数据表(基表),数据与基表中数据同步,即对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。10) 简述数据库设计过程中概念结构设计、逻辑结构设计阶段各应完成的任务。1) 概念结构设计的主要任务是对需求分析的结果进行综合、归纳,从而形成一个独立于具体数据库管理系统的概念数据模型。2) 逻辑结构设计阶段的主要任务是将概念结构设计的结果转换为某个具体的数据库管理系统所支持的结构数据模型,并对其进行优化。11) 使用存储过程的优势1) 可以减少客户端代码的重复。只需创建存储过程一次并将

16、其存储在数据库中,以后即可在客户端程序中多次调用该存储过程。2) 允许更快地执行。如果某操作需要大量的Transact-SQL代码或需要重复执行,使用存储过程将比在客户端执行Transact-SQL批代码的执行速度要快。存储过程在服务器端经过预编译,可以直接执行;而在客户端每次运行Transact-SQL语句时,都要从客户端重复发送,并且在SQL Server每次执行这些语句时,都要对其进行编译和优化。因此,存储过程执行速度更快。3) 减少网络流量。例如,一个需要数百行Transact-SQL代码的操作由一条执行过程代码的单独语句就可实现,而不需要在网络中发送数百行代码。4) 可以简化数据库管

17、理。例如,要修改某种查询,如果查询重复存放在客户机上,则要在所有客户机上修改查询,而使用存储过程可以集中修改。12) deleted表和inserted表的作用?1) deleted表用于存储DELETE和UPDATE语句所影响的行的副本。在执行DELETE或UPDATE语句时,行从触发器表中删除,并传输到deleted表中。deleted表和触发器表通常没有相同的行。2) inserted表用于存储INSERT和UPDATE语句所影响的行的副本。在一个插入或更新事务处理中,新建行被同时添加到inserted表和触发器表中。inserted表中的行是触发器表中新行的副本。 四、程序设计题 假设

18、“阳光”酒店的数据库中有以下的几个关系模式:客户个人信息(身份证号,姓名,性别,年龄,工作单位)客户入住信息(身份证号,客房号,入住时间,退房时间)客房(客房号,客房类型号)定价(客房类型号,客房类型,单价)订票(身份证号,机票号,订票时间)机票(机票号,起始地,目的地,起飞时间,到达时间,机票价格,机票状态,航空公司号)航空公司(航空公司号,航空公司名,电话)雇员(雇员号,姓名,雇佣日期,被投诉次数)试用关系代数完成以下操作:(1) 查询“布什”先生所订客房的价格。 P姓名, 单价(s姓名=布什(客户个人信息*客户入住信息*客户入住信息*定价)试用SQL语言完成下列操作:(2) 查询身份证号

19、为“123456789123456789”的客户的最近入住时间。 SELECT MAX(入住时间)FROM 客户入住信息WHERE 身份证号=123456789123456789(3) 查询总共从“东方航空公司”订票的张数。SELECT COUNT(*) AS订票总张数FROM机票, 航空公司WHERE 机票.航空公司号=航空公司.航空公司号 AND航空公司名=东方航空公司GROUP BY机票.航空公司号(4) 酒店新近招聘一名雇员,其雇员号为“E111”,姓名为“玛丽”,雇佣日期为“20091122”,将该雇员的信息插入相应的表。INSERT INTO雇员(雇员号,姓名,雇佣日期)VALUE

20、S(E111,玛丽,20091122)(5) 假设你是该系统的DBA,请将查询机票信息权限赋予操作员“可比克”。GRANT SELECT ON机票 TO 可比克GRANT SELECT ON 航空公司 TO 可比克(6) 试用SQL语言创建客户个人信息表(相关属性的数据类型及数据宽度结合实际情况自定义),该表的完整性规则如下:实体完整性:客户个人信息表的主键“身份证号”。用户定义完整性:规定姓名、年龄不能为空,性别只有“男”和“女”两个值,年龄的值必须大于等于18岁小于等于100岁。CREATE TABLE 客户个人信息(身份证号 CHAR(18) PRIMARY KEY,姓名 CHAR(50

21、) NOT NULL,性别 CHAR(2) CHECK (性别=男 OR 性别=女),年龄 Tinyint NOT NULL,CHECK (年龄 BETWEEN 18 AND 100),工作单位 CHAR(50)假设“阳光”酒店的数据库中有以下的几个关系模式:客户个人信息(身份证号,姓名,性别,年龄,工作单位)客户入住信息(身份证号,客房号,入住时间,退房时间)客房(客房号,客房类型号)定价(客房类型号,客房类型,单价)订票(身份证号,机票号,订票时间)机票(机票号,起始地,目的地,起飞时间,到达时间,机票价格,机票状态,航空公司号)航空公司(航空公司号,航空公司名,电话)雇员(雇员号,姓名,

22、雇佣日期,被投诉次数)试用关系代数完成以下操作:(7) 查询“东方航空公司”所有航班的目的地。 P目的地(s航空公司名=东方航空公司(机票*航空公司)试用SQL语言实现下列查询:(8) 查询“8888”房间的客房类型、入住的客户身份证号及入住时间。SELECT 客房类型,身份证号.入住时间FROM 客户入住信息, 客房, 定价WHERE客户入住信息.客房号=客房.客房号 AND客房.客房类型号=定价.客房类型号 AND 客房.客房类型号=8888 (9) 查询总共从“东方航空公司”订票的张数。 SELECT COUNT(*) AS订票总张数FROM机票, 航空公司WHERE 机票.航空公司号=

23、航空公司.航空公司号 AND航空公司名=东方航空公司GROUP BY机票.航空公司号(10) 身份证号为“123456789987654321”,姓名为“孙丽”,年龄为39岁的女客户到酒店定了一个房间号为“3333”的客房,试对相应的表做相应的操作。 INSERT INTO客户个人信息(身份证号,姓名,性别,年龄)VALUES(123456789987654321,孙丽,女,39) INSERT INTO客户入住信息(身份证号,客房号,入住时间)VALUES(123456789987654321,3333,GETDATE()(11) 假设你是该系统的DBA,由于工作变动,需要回收操作员“可比克

24、”的查询机票信息的权限。 REVOKE SELECT ON机票 FROM可比克REVOKE SELECT ON 航空公司 FROM 可比克(12) 试用SQL语言创建客户入住信息(相关属性的数据类型及数据宽度结合实际情况自定义),该表的完整性规则如下 :实体完整性:客户个人信息表的主键“身份证号,入住时间”。参照完整性:定义客户入住信息的外部关键字为“身份证号”。 CREATE TABLE 客户入住信息(身份证号 CHAR(18) NOT NULL,客房号 CHAR(10) NOT NULL,入住时间 DATETIME DEFAULT GETDATE(),退房时间 DATETIME ,PRIM

25、ARY KEY(身份证号, 客房号),FOREIGN KEY(身份证号) REFERENCES 客户个人信息(身份证号)五、综合题 以下是某商业数据管理系统,其管理的对象及信息包括:1. 顾客有编号、姓名、单位、电话。2. 商品有商品编码、商品名称、单价。这些对象之间的联系如下:1. 每一名顾客可能买多种商品,且每一种商品又可能有多名顾客购买。2. 顾客每一次购买商品还涉及日期、数量、金额。根据上述描述,解答下列各题:(1)试画出E-R图并在E-R图中标注联系的类型。 (2)指出每一个实体的键(用下划线标注)。 (3)将E-R图转换成关系模型(用下划线标注每个关系的主码)。 (4)用下划线标注

26、每个关系的主码。 数量日期商品商品编号名称单价购买N姓名顾客顾客编号电话M单位金额1)2)顾客(顾客编号,姓名,单位,电话) 商品(商品编号,名称,单价)购买(顾客编号,商品编号,日期,数量,金额)为某高校体育部门建立数据库,其中包含如下信息:(1)运动队:队名、主教练,其中队名惟一标识运动队。(2)运动员:运动员编号、姓名、性别、年龄。(3)运动项目:项目编号、项目名、所属类别。其中:每个运动队有多名运动员,每名运动员只属于一个运动队;每名运动员可以参加多个项目,每个项目可以有多个运动员参加。系统记录每名运动员参加每个项目所得名次和成绩以及比赛日期。(1)试画出E-R图并在E-R图中标注联系

27、的类型。 (2)指出每一个实体的键(用下划线标注)。 (3)将E-R图转换成关系模型(用下划线标注每个关系的主码)。 (4)用下划线标注每个关系的主码。 比赛日期名次队名运动队主教练项目项目编号项目名类别比赛N地址姓名运动员编号年龄NM性别属于1成绩1)2)运动队(队名,主教练,地址)运动员(编号,姓名,性别,年龄)项目(项目编号,项目名,类别)属于(编号,队名)比赛(编号,项目编号,比赛日期,成绩,名次)附加:一、应用题1创建名为“Love”的数据库,其中主数据文件为Lovedat.mdf,初始大小为8M,增长大小为1M,日志文件为Lovedat.ldf,初始大小是5M,最大存储空间是30M

28、,增长是5M。请写出相应的SQL语句。 2使用sql语句创建表authors,结构如下表所示 列名数据类型大小是否为空默认值说明authorIDint4N编号(主键),自动增长authorNamenvarchar50N姓名Phonenvarchar13Y电话addressnvarchar255Y地址3使用SQL语句对2中创建的authors表进行如下修改: (1)添加Sex 列 char(2),city列 varchar(20)。(2)删除city列。(3) 修改作者信息表authors中的address列将该列的属性的长度更改为500。4系部表的创建语句如下,请完成以下操作CREATE TA

29、BLE 系部 (系部代码 char(2) CONSTRAINT pk_xbdm PRIMARY KEY,系部名称 varchar(30) NOT NULL,系主任 char(8)(1)将系部表中计算机系的系主任改为张中裕(2)将系部表中的系部名称列中的系全部更改为科学系(使用replace函数,用法:replace(串1,串2,串3),其功能是将串1中的串2 替换为串3 )(3)在系部表中删除系主任姓张的系部数据5有二个数据表XS(xh, xm)和XS_KC(xh, kch, cj),用两种方法,写出如下查询:“查找数据库中所有学生的学号(xh)、姓名(xm)以及其所选修的课程号(kch)和成

30、绩(cj)”。 1.create database love on (name=lovedat,filename=d:databaselovedat.mdf,size=8,Maxsize=unlimited,filegrowth=1)log on (name=lovedat_log,filename=d:databaselovedat.ldf,size=5,Maxsize=30,filegrowth=5)2. create table authors (authorid int identity(1,1) primary key not null, authorname nvarchar(50) not null,phone nvarchar(13) null, address nvarchar(255)3. (1) alter table authors add sex char(2) null,city nvarchar(20) null; (2) alter table authors drop column city(3) alter table authors alter column address n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论