当前位置:文档之家› 数据库原理与应用试题及答案

数据库原理与应用试题及答案

一、单选题(共20分,每题1分)1.DB、DBMS和DBS三者之间的关系是()A. DB包括DBMS和DBSB. DBS包括DB和DBMSC. DBMS包括DB和DBS C. DBS与DB和DBMS无关2.在数据库系统中,读脏数据是指一个事务读了另一个事务()A. 未更新的数据B. 未撤销的数据C. 未提交的数据D. 未刷新的数据3.加锁协议中规定“先申请先服务”的原则,可以避免数据库系统出现()A. 活锁B. 死锁C. 读-写冲突D. 写-写冲突4.语句DELETE FROM SC表明()A. 删除SC中的全部记录B. 删除基本表SCC. 删除基本表SC中的列数据D. 删除基本表SC中的部分行5.数据库设计阶段分为()A. 物理设计阶段、逻辑设计阶段、编程和调试阶段B. 模型设计阶段、程序设计阶段和运行阶段C. 方案设计阶段、总体设计阶段、个别设计阶段和编程阶段D. 概念设计阶段、逻辑设计阶段、物理设计阶段、实施和调试阶段6.关系笛卡尔积运算记号R×S表示()A. R为关系名,S为属性名B. R和S均为属性名C. R为属性名,S为关系名D. R和S均为关系名7.在DB应用中,一般一条SQL语句可产生或处理一组记录,而DB主语言语句一般一次只能处理一条记录,其协调可通过哪种技术实现()A. 指针B. 游标C. 数组D. 栈8.下列说法中不正确的是()A. 任何一个包含两个属性的关系模式一定满足3NFB. 任何一个包含两个属性的关系模式一定满足BCNFC. 任何一个包含三个属性的关系模式一定满足3NFD. 任何一个关系模式都一定有码9.在下列基本表中数值5表示()CREATE TABLE student(Snum CHAR(5)NOT NULL UNIQUE,Sname CHAR(2));A. 表中有5条记录B. 表中有5列C. 表中字符串Snum 的长度D. 表格的大小10.在视图上不能完成的操作是()A. 更新视图B. 查询C. 在视图上定义新的基本表D. 在视图上定义新视图11.在DBS中,DBMS和OS之间的关系是()A. 相互调用B. DBMS调用OSC. OS调用DBMSD. 并发运行12.关系中行列次序的变换性质是()A. 行可以交换,列不可交换B. 行不可交换,列可交换C. 行、列均不可交换D. 行、列均可以交换13.单个用户使用的数据视图的描述称为()A. 外模式B. 概念模式C. 内模式D. 存储模式14.数据库系统安排多个事务并发执行的过程称为()A. 步骤B. 进程C. 调度D. 优先级15.SQL语言有两种使用方式,分别称为交互式和()A. 提示式SQLB. 多用户SQLC. 嵌入式SQLD. 解释式SQL16.以下不属于服务器端脚本语言的是()。

A. JSPB. PHPC. ASPD. ADO17.在数据库系统中,空值是()A. 0B. 空格C. 空字符串D. 不确定18.下列关于触发器的描述错误的是()。

A. 触发器是一种实现复杂完整性约束的特殊存储过程B. 触发器必须创建在一个特定的表上C. 触发器通过EXECUTE语句调用D. 触发器中使用了两张专用的临时表inserted和deleted19.数据库并发操作可能带来的问题包括()A. 丢失更新B. 数据独立性会提高C. 非法用户的使用D. 增加数据冗余度20.下面不是数据库系统必须提供的数据控制功能的是()A. 安全性B. 完整性C. 可移植性D. 并发控制二、填空题(16分,每空2分)1.C/S结构是()结构的简称。

2.角色管理机制可以简化()的工作量。

3.完全恢复模型是以后援副本和()为基础的恢复方法。

4.设有3个关系模式:职工(职工号,姓名,年龄,性别)公司(公司号,名称,地址)工作(职工号,公司号,工资)在定义表结构时,用SQL子句实现下列完整性约束:(1)公司表中公司号非空且唯一()。

(2)工作表中公司号的值必须是公司表中的有效公司号()。

(3)职工的性别为‘男’或‘女’()。

(4)女职工的年龄在18~50岁之间()。

5.对上题中的3个关系,写出检索金山公司所有男职工的姓名和年龄的关系代数表达式()。

三、简答题(14分)1.试述DBMS的主要功能。

(4分)2.简述产生死锁的原因以及预防死锁的三种方法。

(5分)3.试述事务的概念及事务的四个特性。

(5分)四、设计题(50分)1.某医院病房计算机管理中需要如下信息:科室:科名,科地址,科电话,医生姓名病房:病房号,床位号,所属科室名医生:姓名,职称,所属科室名,年龄,工作证号病人:病历号,姓名,性别,诊断,主管医生,病房号其中,一人科室有多个病房,多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。

(1)请根据上述规则设计此数据库的E-R模型,要求在E-R图中注明属性和联系的类型。

(6分)(2)将E-R模型转换成关系模型,并指出每个关系模式的主码。

(6分)2.现有一个未规范化的表,包含了项目、部件和已提供的数量信息。

要求:部件号部件名现有数量项目代号项目内容项目负责人已提供数量205 CAM 30 12 AAA 01 1020 BBB 02 15210 COG 155 12 AAA 01 3025 CCC 11 2530 DDD 12 15…(1)写出基本函数依赖集,并找出候选码。

(4分)(2)判断最高达到第几范式,并说明理由。

(2分)(3)如果有必要,将其分解成3NF模式集。

(6分)3.设有图书关系BOOK(BID,BNAME,QTY),属性依次是书号、书名、库存数量。

规定当一批图书入库时,首先判断是否存在该书,如果存在则更改其库存数量,并通知客户最新的库存数量;否则,插入该书信息(书名暂时为空),并发出“新书入库”的提示信息。

设计一个存储过程来实现此功能,该存储过程有书号(@bid)和入库数量(@s)2个参数。

同时,要求设计一个SQL程序验证存储过程的作用。

(10分)4.设有4个关系模式:供应商关系:S(SNO,SNAME,CITY),属性依次是供应商号、供应商名称和所在城市;零件关系:P(PNO,PNAME,COLOR),属性依次是零件号、零件名和颜色;工程关系:J(JNO,JNAME,CITY),属性依次是工程号、工程名和所在城市;供应关系:SPJ(SNO,PNO,JNO,QTY),属性依次是供应商号、零件号、工程号和数量。

用SQL语句实现下列操作:(1)查询P1号零件的颜色。

(2分)(2)查询S1号供应商为J1号工程提供零件的编号和供应数量,查询结果按零件号降序排列。

(2分)(3)查询由S1号供应商提供红色零件的工程号。

(2分)(4)查询与其提供零件的供应商所在城市为同一城市的工程号。

(2分)(5)统计所在地为杭州的工程数量。

(2分)(6)统计每个供应商提供的零件总数。

(2分)(7)查询比J1号工程使用的零件数量多的工程号。

(2分)(8)删除为由S1号供应商提供零件的工程信息。

(2分)标准答案及评分标准一、单选题(20分)二、填空题(16分)三、简答题(14分)1.答:DBMS的主要功能包括:数据库的定义功能、数据库的操纵功能、数据库的运行控制功能、数据库的运行和维护功能、数据字典。

(4分)。

2.答:一个事务若申请锁未被批准,则需等待其它事务释放锁。

当事务之间出现循环等待时,如果不加干预,则会一起等待下去,从而产生死锁。

(2分)常见的预防死锁的三种方法如下:(1)要求每一个事务必须同时封锁所要使用的全部数据。

(1分)(2)对所有数据对象规定一个封锁的次序,要求所有事务必须按照这个次序封锁数据对象。

(1分)(3)当事务申请锁未被批准时,不等待加锁而是让一些事务回滚重新执行。

(1分)3. 答:事务是DBMS的执行单位,它由有限的数据库操作序列组成。

(1分)事务具有以下四个特性:(1)执行的原子性。

即不允许事务部分地完成。

(1分)(2)保持数据库的一致性。

即事务对数据库的作用应使数据库从一个一致状态转变到另一个一致状态。

(1分)(3)作用的持久性。

即一个事务成功执行后,以数据库的影响应是永久的,即使数据库故障被破坏,DBMS也应该能够恢复。

(1分)(4)彼此的隔离性。

即多个事务并发执行时,应象各个事务单独执行一样,互不干扰。

(1分)四、设计题(50分)1. (1)E-R图如下:(6分)(2)对应关系模型结构如下:科室(科名,科地址,科电话)(1分)病房(病房号,床位号,科名)(1分)医生(工作证号,姓名,职称,科名,年龄)(2分)病人(病历号,姓名,性别,诊断,主管医生,病房号)(2分)2.(1)FD={部件号→部件名,部件号→现有数量,项目代号→项目内容,项目代号→项目负责人,(项目代号,部件号)→已提供数量},候选码为(项目代号,部件号)。

(4分)(2)存在部件名属性对候选码的部分函数依赖,,因此最高达到1NF。

(2分)(3)部件(部件号,部件名,现有数量)(2分)项目(项目代号,项目内容,项目负责人)(2分)提供(项目代号,部件号,已提供数量)(2分)3.存储过程:CREATE PROCEDURE BOOK_QTY @bid INT, @s INT --(2分)ASDECLARE @bs INTIF EXISTS(SELECT * FROM BOOK WHERE BID=@bid)--(2分)BEGINUPDATE BOOK SET QTY=QTY+@s WHERE BID=@bid --(2分)SELECT @bs=QTY FROM BOOK WHERE BID=@bid --(2分)PRINT ‘库存数量’+STR(@s)ENDELSEINSERT INTO BOOK(BID,QTY)V ALUES(@bid,@s)--(2分)PRINT ‘新书入库’GO4.(1)SELECT COLOR FROM P WHERE PNO=‘P1’(2分)(2)SELECT PNO,QTY FROM SPJ WHERE JNO=‘J1’AND SNO=‘S1’ORDER BY PNO DESC(2分)(3)SELECT JNO FROM P JOIN SPJ ON(P.PNO=SPJ.PNO)WHERE COLOR=‘红’AND SNO=‘S1’(2分)(4)SELECT J.PNO FROM J JOIN SPJ ON(J.PNO=SPJ.PNO)JOIN S ON (S.SNO=SPJ.SNO)WHERE J.CITY=S.CITY(2分)(5)SELECT COUNT(JNO)FROM J WHERE CITY=‘杭州’(2分)(6)SELECT SNO,SUM(QTY)FROM SPJ GROUP BY SNO(2分)(7)SELECT JNO FROM SPJ GROUP BY JNO HA VING SUM(QTY)>(SELECT SUM (QTY)FROM SPJ WHERE JNO=‘J1’)(2分)(8)DELETE FROM J WHERE JNO IN(SELECT JNO FROM SPJ WHERE SNO=‘S1’)(2分)。

相关主题