一、填空题:02分,每题02分
1、 如果事务T对数据D加了S锁,则在T释放D上的S锁以前,其他事务只能对D加( s锁 )而不能加( x锁 )。 二、单选题:20分,每题02分
2、 要查询与“xx电大”的课程(c)相关的所有教授(p)的名字,可用如下OQL语句。 SELECT p.name FROM Prefessors p
WHERE ( D ) c IN p.professorRelated: c.ownedBy.name=’xx电大’; A: ALL B: FOR ALL C: EXIST D: EXISTS
3、 1. 用户要执行语句 UPDATE Std SET(Grd=Grd+1) WHERE Grd=90
则这个用户必须拥有的数据库权限有( B )。 A: 插入权限 B: 修改权限
C: 查询权限 D: 删除权限
4、 关系代数的五个基本操作可直接转换成元组关系演算表达式,它们是:并、差、投影,选择和( B ) A: 交 B: 笛卡尔积 C: 自然连接 D: θ连接
5、 SELECT 语句执行的结果是( C )。 A: 数据项 B: 元组 C: 表 D: 数据库
6、 在SELECT 语句中使用AVG (属性名) 时, 属性名( A )。 A: 必须是数值型 B: 必须是字符型
C: 必须是数值型或字符型 D: 不限制数据类型
7、 当选择满足一定条件的元组进行分组时,应使用的关键字是( B )。 A: SELECT B: GROUP
C: WHERE D: HAVING
8、 一个学生可以同时借阅多本图书,一本图书只能由一个学生借阅,学生和图书之间为( B )的联系。 A: 1对1 B: 1对多 C: 多对多 D: 多对1
9、 如果一个关系R中的所有非主属性都完全函数依赖于每个候选关键字,则称关系R属于( A )。 A: 2NF B: 3NF C: 4NF D: BCNF
10、 现有学生关系Student,属性包括学号(Sno),姓名(Sname),所在系(Sdept),系主任姓名(Mname),课程名(Cname)和成绩(Grade)。这些属性之间包含如下联系:一个学号只对应一个学生;一个学生只对应一个系;一个系只对应一个系主任;一个学生的一门课只对应一个成绩;学生名可以重复;系名不重复;课程名不重复。则以下不正确的函数依赖是( C )。 A: SnoàSdept B: Sno à Mname
C: Sname à Sdept D: Sno Cname àGrade
11、 一个关系模式R{x1,x2,x3,x4},假定该关系存在着如下函数依赖:x1àx2,x1àx3,x3àx4 ,则该关系属于( )。 A: 2NF B: 3NF C: 4NF D: BCNF
三、多选题:10分,每题02分
12、 针对关系模式Product ( PNo, maker, model, type, price) 下列语句彼此之间等价的是( ) A : σprice>5000 (Product) B : P (a,b,c,d,e)
Product (a,b,c,d,e) AND e>5000
C : {t1t2t3t4t5 | Product(t1t2t3t4t5) ∧ t5>5000} D : {t | Product (t1t2t3t4t5) ∧ t[5]>5000} 13、 1. 用户要执行语句 INSERT INTO Std (Name) SELECT Name FROM Class
则这个用户必须拥有的数据库权限有( )。 A : 插入权限 B : 修改权限
C : 查询权限 D : 删除权限
14、 具有DBA权限的用户具有下列哪些权限( )。 A : 可以访问数据库中的任何数据 B : 可以批准或收回数据库用户
C : 有权对数据库进行调整、重组或重构 D : 有权控制整个数据库的跟踪审查
15、 已知关系Movie中有函数依赖title year à length color,则下面正确的分解结果有( )。 A : title à length color B : year à length color C : title yearà length D : title yearà color
16、 下面哪一个依赖是平凡依赖( )。 A : Sno Cname Grade à Cname Grade B : Sno Cname à Cname Grade C : Sno Cname à Sname Grade D : Sno à Sname
四、判断题:10分,每题01分
17、 方法的实际代码是对象定义语言的一部分。( )
18、 OQL中没有明确的关系概念,它只是结构的集合(或者包)。而SQL3中的对象则把关系作为核心概念。( )
19、 “= NULL”表示一个值是空值。( )
20、 如果对关系的查询比更新频繁的多,对使用频率高的属性建立索引比较有价值。( )
21、 物理设计可以独立于数据库管理系统。( )
22、 对于关系数据库系统,用户既要提出“做什么”,也要指出“怎么做”。( )
23、 利用关系代数等价变化规则不一定能把非优化的查询表达式变换成优化的查询表达式。( )
24、 R的键码的真子集有可能函数决定R的所有其它属性。 25、 超键码都是键码。
26、 如果一个关系数据库中的所有关系模式都满足BC范式,那么在函数依赖范畴内,它已实现了模式的彻底分解,达到了最高的规范化程度,消除了更新异常和信息冗余。 五、填空选择题:02分,每题02分
27、 一个数据库通常有( )外模式,一个外模式可为( )应用程序使用。一个数据库有( )模式,有( )内模式。 选 项 1 : 1个 2 ~ 3个 n个 多个 选 项 2 :
1个 2 ~ 3个 n个 多个 选 项 3 : 1个 2 ~ 3个 n个 多个 选 项 4 : 1个 2 ~ 3个 n个 多个
六、简答题:15分,每题05分 28、 什么是关系? 参考答案:
答:所谓关系,就是一张二维表。表的各列以属性开始,属性是列的入口。属性下面的每一行称为一个元组。
29、 设有两个关系R(ABC)和S(DBE)元组关系演算表达式是:
写出域关系演算表达式。 参考答案:
30、 关系模式如下: 商店 S(SNO,SN,CITY) 销售 SP(PNO,SNO,QTY)
用域关系演算写出下述操作的查询表达式。 查询出售商品号“P2”的商店名SN。 参考答案:
七、综合题:35分,每题05分
31、 请为计算机经销商设计一个数据库,要求包括生产厂商和产品的信息。生产厂商的信息包括名称、地址、电话等;产品的信息包括生产商、品牌、型号、价格等。用E/R图来描述该数据库,并且指出键码。 参考答案:
32、 对于关系模型Producer(name,address,tel)和Product(brand,model,price)表示的数据库,在其中加入顾客的信息(假设顾客无重名),包括姓名、地址、电话、身份证号等等,试修改数据库,把修改或增加的部分用ODL加以描述。 参考答案: 用ODL描述:
interface Customer
(key name ,IDcard ) (假设顾客无重名)
{ attribute string name ;
attribute string addr;
attribute integer tel ;
attribute string IDcard ;
relationship Set inverse Product::purchasedBy; }; interface Product (key (brand ,model) ) { attribute string brand ; attribute string model; attribute integer price ; relationship Producer producedBy inverse Producer::produces ; relationship Customer purchasedBy inverse Customer::purchases; }; 33、 关系模式如下: 商品 P(PNO,PN,COLOR,PRICE) 商店 S(SNO,SN,CITY) 销售 SP(PNO,SNO,QTY) 用关系代数写出下述操作的查询表达式和表达树。 查询出售商品“TV”的商店名SN。 参考答案: 关系代数:ПSN(S 表达树 SP (σPN=“TV”(P))) 34、 对于如下关系R和S 写出R S、R S和R-S。 参考答案: RS TeacherNo Course TeacherName TEL 101 RS 王明 62203546 数据结构 TeacherNo Course 数据结构 TeacherName TEL 62203546 101 202 303 102 王明 张华 62209876 经济数学 赵娟 62208076 英语 孙利 64309876 数据库 郭小华 63398076 计算机网104 络 R-S TeacherNo TeacherName TEL Course 张华 62209876 经济数学 202 赵娟 62208076 英语 303 35、 假设学生选课数据库关系模式如下: Student (SNo, SName, SAge ,SDept );Course (CNo, CName) SC (SNo,CNo, Score) 用关系代数进行如下查询: ;(1) 学生张林的“数据库原理”课成绩。 (2)画出上述查询的关系代数表达树。 参考答案: (1) πScore (σSName=‘张林’(Student ) (σCName=’数据库原理’(Course))) (2) SC 36、 假设学生-课程数据库关系模式如下:Student(Sno,Sname,Sage,Ssex);Course(Cno,Cname,Teacher);SC(Sno,Cno,Grade)。查询郑小华同学选修课程的课程名和任课教师姓名。 (1) 写出该查询的关系代数表达式。 (2)写出表达式的等价变换过程。 参考答案: 1) πCname,Teachar((σSname=’郑小华’(Student) Course) 2) 为说明等价变换过程,以笛卡尔积为基础表达查询(Student简化为S,Course简化为C): SC) πCname,Teacher(σSname=’郑小华’(σS.Sno=SC.Sno AND C.Cno=SC.Cno (S SC C))) a) 利用选择的交换律 σSname=’郑小华’和σS.Sno=SC.Sno AND C.Cno=SC.Cno交换, 得到σSname=’郑小华’(S SC C) b) 利用选择对笛卡尔的分配律 得到σSname=’郑小华’(S ) SC C c) 利用选择的串接律 σS.Sno=SC.Sno AND C.Cno=SC.Cno分解为 σS.Sno=SC.Sno和σC.Cno=SC.Cno d) 利用选择对笛卡尔积的分配律,得到 σC.Cno=SC.Cno(σS.Sno=SC.Sno(σSname=’郑小华’(S) SC ) C) e) 利用选择与投影的串接律 πCname,Teacher(σC.Cno=SC.Cno(…)) π Cname,Teacher ( σ C.Cno=SC.Cno ( π Cname,Teacher,C.Cno,SC.Cno(…))) f) 把πCname,Teacher,C.Cno,SC.Cno分解为πCname,Teacher,C.Cno和πSC.Cno g) 与e,f类似,对πSC.Cno(σS.Sno=SC.Sno(…))做相应变换,并把 πSC.Cno,S.Sno,SC.Sno分解为πS.Sno和πSC.Sno,SC.Cno h) 对πS.Sno(σSname=’郑小华’(S))作相应变换,最终结果如下: πCname,Teacher(σC.Cno=SC.Cno(πSC.Cno(σS.Sno=SC.Sno (πS.Sno(σSname=’郑小华’(πS.Sno,Sname(S)))SC.Sno,SC,Cno (SC))) C)) π 可用自然连接表示如下:πCname,Teacher(πSC.Cno(πS.Sno(σSname=’郑小华’ (πS.Sno,Sname(S))) 37、 对于电影、演员和电影主演关系: Movie(title, year, length, inColor, studioName) Actor(name, address, gender, birthYear) Acts(movieTitle, movieYear, actorName) 写出下列基于元组的检验(CHECK)约束: (1) 1939年以前制作的电影不会是彩色的。 (2) 演员不会出现在他们出生之前制作的电影中。 πSC.Sno,SC.Cno(SC)) C) 如果约束涉及到两个关系,则应把约束放在两个关系中,从而保证无论哪个关系发生变化都将插入和修改操作的约束进行检验。 参考答案: 1) CREATE TABLE Movie ... CHECK (NOT color OR year>=1939) ); 2) CREATE TABLE Actor( ... birthYear INT, CHECK ( name NOT IN ( SELECT actorName FROM Acts) OR birthYear ); CREATE TABLE Acts( ... CHECK (actorName NOT IN ( SELECT name FROM Actor) OR movieYear > (SELECT birthYear FROM Actor WHERE name= actorName )) ); 八、填空题(主观):06分,每题02分 38、 数据模型通常分( )、( )、( )和( )四种。 参考答案: 层次模型、 网状模型、 关系模型、 对象模型 39、 SQL对嵌套查询的处理方法是从( )层向( )层处理。 参考答案: 内 外 40、 两段锁是指把事务分成( )和( )两个阶段。 参考答案: 获得封锁、 释放封锁(或加锁和解锁) 因篇幅问题不能全部显示,请点此查看更多更全内容