07级软件工程数据库A卷答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中南林业科技大学课程考试试卷 答案
课程名称: 数据库原理 ;试卷编号: A 卷 ;考试时间: 120分钟 考核方式:闭卷
一、选择题(每题2分,共20分)
1、在数据库中存储的是( )。
A 、数据 B.数据及其之间的联系
C 、数据模型
D 、信息 2、同一个关系模型的任两个元组值( )。
A 、不能全同
B 、可以全同
C 、必需全同
D 、以上都不对
3、三级模式中描述全体数据的全局逻辑结构的是( )。
A 、存储模式
B 、子模式
C 、用户模式
D 、逻辑模式 4、在SQL 语言中修改表中数据的命令是( )。
A 、CREATE
B 、ALTER
C 、UPDATE
D 、INSERT 5、关系模式R 中的属性全部是主属性,则R ( )。
A 、可能是2NF B.可能是3NF C 、一定是BCNF D 、一定是3NF 6、在数据库设计步骤中,将ER 图转换成关系数据模型的过程是(
)的工作。
A 、需求分析阶段 B.概念设计阶段 C. 逻辑设计阶段 D 、物理设计阶段 7、( D )是DBMS 的基本单位,是用户定义的一组逻辑一致的程序序列。
A 、 文件 B.命令 C 、程序 D 、事务
8、若系统运行过程中,因某种原因,造成系统终止运行,事务在执行过程中以非控制方式终止,致使内存中数据丢失,而外存不受影响,此种情况属于( B )
A 、事务故障
B 、系统故障
C 、介质故障
D 、运行故障 9、不允许任何其他事务对被锁定的目标再加任何其他类型锁的锁是( C )。
A 、共享锁
B 、共享锁或排他锁 C. 排他锁 D 、以上都不是 10、设有两个事务T1、T2,其并发操作如图一所示,则( A )是正确的。
A 、该操作丢失修改
B 、该操作读“脏”数据
C 、该操作不能重复读
D 、该操作不存在问题
学院 专业班级 级
图一 装订线(答题不得超过此线)
二、填空题(每空2分,共20分)
1、R 是3目关系,R 中有5个元组,S 是2目关系,S 中有4个元组,则R S 为 5 目关系,包含 20 个元组
2、负责全面管理和控制数据库系统的是_ DBA _____。
3、数据模型的三要素中, 数据结构 是对数据库系统的静态特性的描述。
4、查询优化的策略中,为加快查询效率,首先要执行的是 查询 操作。
5、有关系R 如图二所示,则R 的候选码为 A 和(B,C) , R 中的函数依赖集为 A →B , A →C , (B,C)→A ,R 属于 BCNF 范式。
6.学生表中有学号、姓名、性别、出生日期、入学成绩5个字段,要求查询年龄最大的学生信息,则使用的SQL 命令是 select * from 学生表 where 出生日期=(select max(出生日期) from 出生日期) 。
7.U1用户拥有employees 表的查询权限和更新salary 字段的权限,那么要收回这两个权限的SQL 命令是 revoke select , update on employees from u1 。
三、判断题(每题2分,共10分)
1、在外码上为空值是可以接受的。
T
2、在关系中元组的顺序是无关紧要的,但是属性是有序的。
F
3、选择索引是数据库设计中物理设计阶段的任务。
T
4、许可证级别低的主体才能写密级高的客体。
T
5、在存取控制机制中,是先进行MAC 检查再进行DAC 检查 F
图二
四、计算题(本题10分)
设有下面两个关系R 、S ,请计算: 1) R2=σ[3]=[5](R ⨯S) 2) R3=R ÷S
1、解:R2=
2、解:先求(P,Q)的每个分量值在R 上的的象集: (2,b)的象集是{(c,d),(e,f)} (9,a)的象集是{(e,f),(d,e)} (7,g)的象集是{(e,f),(c,d)} 再求∏T,Y (S)={(c,d),(e,f)}
(2,b)和(7,g)的象集包含了∏T,Y (S),故结果为R3=
五、综合题(每小题4分,共40分)
1、设有关系模式R(职工号,职工名,性别,项目名,奖金,开工日期,完工日期),其中规定:每个职工可参加多个项目,职工名允许重复,每个职工按其参加的项目发放奖金。
请完成下面的题目: (1) 请写出关系模式R 的候选码 解:R 的候选码是(职工号,项目名) (2) 写出关系模式R 的基本函数依赖; 解:F ={(职工号,
项目名) f 奖金
因职工号→职工名,(职工号,项目名) p 职工名, 职工号→性别,(职工号,项目名) p 性别,
因项目名→开工日期,(职工号,项目名) p 开工日期 项目名→完工日期,(职工号,项目名) p 完工日期}
(3)试问关系模式R 最高已经达到第几范式?为什么?如果R 不属于3NF ,请将R 分解成3NF 模式集 解:R 仅达到1NF ,因为其中存在非主属性对候选码(职工号,项目名)的部分函数依赖。
故R 可以分解成三个关系子模式: 职工(职工号,职工名,性别)
项目(项目名,开工日期,完工日期)
参加(职工号,项目名,奖金)
2.设有商店和顾客两个实体:
商店的属性::商店编号字符型(8)、商店名字符型(20)、商店地址字符型(20)、电话字符型(12)
顾客的属性:顾客编号字符型(8)、顾客姓名字符型(10)、顾客地址字符型(8)、出生日期日期时间型
假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和购物时间,而且规定每个顾客在每个商店里每天最多消费一次
(1)画出E-R图,并注明属性、主键和联系类型
(2)用SQL语句建立购物表,要定义确定主码和外码,消费金额的约束为大于0,购物时间的默认值为系统当前时间。
create table 购物表
(顾客编号char(8),
商店编号char(8),
消费金额numbric(8,2),
消费时间datetime default getdate( ),
primary key (顾客编号,商店编号),
foreign key (顾客编号) references 顾客表(顾客编号),
foreign key (商店编号) references 商店表(商店编号),
check(消费金额>0)
)
3、由上题可得三个关系模式,商店表,顾客表,购物表,完成下面的题目:
(1)用关系代数表达式写出:查询在1号商店或者2号商店购物的顾客编号,姓名和购物时间。
∏顾客编号,姓名,购物时间(σ商店编号>‘1’∨商店编号>‘2’(购物表))
(2)用SQL语言写出:查询三天前(包括今天)的消费金额低于200的顾客编号,商店名,顾客姓名和消费金额,结果按商店名升序排列,同一商店的按消费金额降序排列
Select 顾客编号,商店名,顾客姓名,消费金额
From 商店表,顾客表,购物表
Where 商店表.商店编号=购物表.商店编号and 顾客表.顾客编号=购物表.顾客编号
And 消费金额<200 and datediff(day,购物时间,getdate( ))<3
Order by 商店名,消费金额desc
4、程序填空。
编写一个带参数的存储过程p_cursor,要求实现的功能是:现有教师表T(tno教师号,tname 教师名,tsex性别,salary薪水,title职称),在调用过程时,为参数赋值某一职称(如讲师),则打印输出所有讲师的教师姓名和薪水。