中央广播电视大学2001—2002学年度第一学期“开放本科”期末考试计算机专业数据库系统概论试题
王新兰2004-03-06 15:48
中央广播电视大学2001—2002学年度第一学期“开放本科”期末考试
计算机专业数据库系统概论试题
2002年1月
一、(每小题4分,共12分)
用SQL语言定义
1)学生关系S,包括学号SNo、姓名SN、年龄SA、系别SD;
2)课程关系C,包括课程号CNo、课程名CN、学分CC;
3)学生选课关系SC,包括SNo、CNo和成绩G。
注意:说明主键码和外键码(如果有的话)。
二、(每小题4分,共12分)
按题1的关系模式,用SQL语言
1)对于学生选课关系SC,授予李小兰删除权限以及对SNo和CNo的修改权限;
2)删除学号为"9900205”的学生;
3)从学生选课关系SC中,删除王云(学生关系中可能有重名)的所有选课。
三、(共6分)
结合题1的关系模式,用SQL语句查询每个学生的总成绩,输出学号和总成绩,输出时按总成绩排序(升序),若总成绩相同,再按学号排序(降序)。
四、(共6分)
按嵌入式SQL的格式插入任一个商品的商品号、商品名、价格。
五、(每小题4分,共8分)
有关工厂生产产品的数据库,涉及如下数据:
工厂号、工厂名称、地址;
产品号、产品名称、成本;
某工厂生产某产品的数量和日期。
1)设计E/R图;
2)转换成关系模型。
六、(每小题6分,共12分)
有关图书发行的关系模型如下:
书店S(书店号SNo,书店名SN,地址A)
图书B(书号BNo,书名T,作者N,价格P)
图书馆L(馆号LNo,馆名LN,城市C)
图书发行SBL(SNo,LNo,BNo,发行量Q)
分别用1)关系代数和2)SQL语言表达如下查询:
“上海图书馆”(馆名)收藏图书的书名和出售该书的书店名。
七、(第1小题4分,第2小题8分,共12分)
图书管理数据库关系模型如下:
图书B(书号BN,书名T,作者A)
学生S(姓名N,班级C,借书证号LN)
借书L(1射,BN,日期D)
查询:2002. 1.1(20020101)以前借书的学生姓名和书名。
要求:1)以笛卡尔积为基础表达查询;
2)用关系代数中两个不同的等价变换规则对查询表达式进行优化(做其中二、三步即可)。
八、(每小题4分,共8分)
按题1的学生关系模式,找出不是既大于20岁又属于计算机系的学生。
1)用关系代数表达式表达查询;
2)用数据逻辑规则表达查询。
九、(每小题6分,共12分)
涉及到学生、教师和课程的关系模式STC(SNo,SN,SA,TN,CN,G),其中6个属性分别为学生的学号、姓名、年龄、教师的姓名、课程名以及学生的成绩。假设学生有重名,课程名也可能有重名。又假设每个教师只教一门课,但一门课可有几个教师开设。当某个学生选定某门课后,其上课教师就固定了。
1)写出键码和函数依赖;
2)分解关系模式使之属于BC范式。
十、(每小题6分,共12分)
电影数据库涉及如下数据:
电影类包括电影名、制作年份等属性;
演员类包括姓名、性别等属性;
每部电影都可能有多个演员出演,而每个演员都可能出演多部电影。
1)用ODL给出类的说明(包括范围名);
2)用0QL查询演员孙小华所出演电影的电影名。
答案及评分标准
—、(每小题4分,共12分)
1 ) CREATE TABLE SI
SNo INT PRIMARY KEY,
SN CHAR(30),
SA INT,
SD CHAR(20)
};
2) CREATE TABLE C{
CNo INT PRIMARY KEY,
CN CHAR (20),
CC INT
};
3 ) CREATE TABLE SC {
SNo INT,
CNo INT,
G INT,
PRIMARY KEY( SNo, CNo),
FOREIGN KEY(SNo) REFERENCES S( SNo),
FOREIGN KEY(CNo) REFERENCES C(CNo)
};
二、(每小题4分,共12分)
1) GRANT DELETE, UPDATE( SNo, CNo) ON SC TO 李小兰;
2) DELETE FROM S
WHERE Sno = 9900205;
3) DELETE FROM SC
WHERE SNo IN
( SELECT SNo
FROM S
WHERE SN = ‘王云’
);
三、(共6分)
SELECT SNo ,SUM(G)
FROM SC
GROUP BY SNo
ORDER BY SUM(G), SNo DESC
四、(共6分)
1) 说明: EXEC SQL BEGIN DECLARE SECTION;
int pno;
char pn [ 30 ];
float pp [ 1 ];
char SQISTATE [ 6 ];
EXEC SQL END DECLARE SECTION;
2) 赋值: pno: = 20010101;
pn: ‘巧克力’;
pp: =5.00;
3) 插入: EXEC SQL INSERT INTO P
VALUES (: pno,: pn,: pp);
五、(每小题4分,共8分)
2)工厂(工厂号,工厂名,地址)
产品(产品号,产品名,单价)
生产(工厂号,产品号,数量,日期)
六、(每小题6分,共12分)
2) SELECT T, SN
FROM L,SBL,B,S
WHERE L. LNo = SBL. LNo AND SBL. BNo = B. BNo
AND SBL. SNo = S. SNo
AND L. LN =‘上海图书馆’
七、(第1小题4分,第2小题8分,共12分)
2)
a)利用选择与投影的交换律
b)利用选择的交换律
交换,得到
c)利用选择对笛卡儿积的分配律
得到
d)利用投影串接律
e)利用选择的串接律
f)再利用选择对笛卡儿积的分配律
得到
g)利用选择与投影的申接律
h)……
(取其中二步即可)
八、(每小题4分,共8分)
九、(每小题6分,共12分)
十、(每小题6分,共12分)
1 ) interface Movie
( extent Movies)
{ attribute string' title ;
attribute integer year;
relationship Set < Act > atcs
inverse Act:: starredIn;
};
inteface Act
( extent Acts)
{ attribute string name;
attribute char sex;
relationship Set 〈 Movie 〉 starredIn
inverse Movie:: acts;
};
2) SELECT m. title
FROM Acts a, a. starredIn m
WHERE a. name =‘孙小华’;