2004 年上海理工大学数据库原理与应用考研真题
一、简答题(40 分)
1.简述数据、数据库、数据库系统和数据库管理系统的概念。
_______________________________________________________________________________
_______________________________________________________________________________
_______________________________________________________________________________
_________________________________________________
2.简述关系模型的完整性规则。
_______________________________________________________________________________
_______________________________________________________________________________
_______________________________________________________________________________
_________________________________________________
3.嵌入式 SQL 什么情况下使用游标?使用游标的步骤分别是什么?
_______________________________________________________________________________
_______________________________________________________________________________
_______________________________________________________________________________
_________________________________________________
4.数据库的日常维护工作主要包括哪些?
_______________________________________________________________________________
_______________________________________________________________________________
_______________________________________________________________________________
_________________________________________________
5.什么是分布式数据库系统?它有什么特点?
_______________________________________________________________________________
_______________________________________________________________________________
_______________________________________________________________________________
_________________________________________________
二、关系代数(15 分)
学生与课程数据库中有下列三个关系模式∶
学生 S(S#,SNAME,AGE,SEX)
课程 C(C#,CNAME,TEACIIER)
成绩 SC(S#,C#,GRADE)
S 的属性分别表示学生的学号、姓名、年龄和性别,C 的属性分别表示为课程号、课程名、
任课教师,SC 的属性分别表示为学号、课程号和成绩。使用关系代数表达式表示每个查询
语句∶
1.查询学习课程号为 C3 的学生的学号、姓名与成绩
2.查询选修了课程号为 C2 或 C4 的学生的学号
3.查询至少选修了课程号为 C2 和 C4 的学生的学号
4.查询不学 C1 课程的学生的姓名和年龄
5.查询学习全部课程的学生姓名
三、SQL,语句(30 分)
针对第二题的三张表,用 SQL 语言完成下列各项操作
1.用 SQL 语言建立学生表。
2.在 S 表中捕入一条学生信息∶('9931001','张平',20,'男')。
3.查询所有的课程信息,并按课程名的降序排列。
4.查询姓"张"的男学生的出生年份。
5.查询已选修了课程的学生的人数。
6.查询选修课程号为 C2 的课程,且分数在 80~89 分之间的学生的学号和分数。
7.查询选修人数超过 10 人以上的课程的课程号。
8.把课程号为 C3 的课程的成绩提高 10??
9.查询选修了课程名为"数据结构"课程的学生的姓名和性别。(使用两种方法)
四、关系规范化(20 分)
有一个客户订货系统,允许客户一次(一张订单)预订多种商品,那么关系模式∶
订单(订单号、日期、客户编号、客户名、商品编码、商品名、数量)关键字是什么?属于
儿范式?为什么?若不是 3NF,请将其转换为 3NF。
五、E-R 模型(30 分)
请设计一个关于系、学生、班级、学会等信息的一个关系数据库。一个系有若干专业,每个
专业每年只招收一个班,每个班有若干学生。每个学生可参加若干学会,每个学会有若干学
生。相关的属性有;学号、姓名、出生年月、班号、专业名、班级人数、入校年份、系号、
系名、办公地点、学会名、成立年份、地点、人数、学生入会年份。
1.要求给出 E-R 图。
2.将 E-R 图转换成关系模型。
3.说明 E-R 图转换成关系模型的一般规则。
六、数据库保护(15 分)
设 T1,T2,T3 是如下的三个事务∶T1:A=A+2;
T2:A=人*2;
T3:A=A**2;(A