一、选择题下列各题A)、B)、C)、D)4个选项中,只有一个选项是正确的。
二、简答题1. 触发器的作用是什么?
触发器的主要作用是:
①完成比CHECK约束更复杂的数据约束。触发器可以引用其他表中的列。
②为保证数据库性能而维护的非规范化数据。比如,为了提高数据的统计效率,在销售情况表中增加了统计销售总量的列,以后,每当在此表中插入数据时,都是用触发器统计销售总值列的新数值,并将统计后的新值保存在此表中。以后当查询销售总值时,直接从表中提取数据即可,而无须再使用查询语句进行统计,从而提高数据的统计效率。
③实现复杂的业务规则,触发器可以使业务的处理任务自动进行。
2. 设关系数据库中有两个关系:
Course(Course_Name,TeacherID)
Enrollment(Course_Name,StudentID,Grade)
设有3门课程,5个学生,学生与课程间有选修关系。
试用聚集文件表示这两个关系的文件结构。
设3门课程分别为DB、OS和COM,5个学生分别为BAI、DE、GU、HAI和YE。如果用户查询主要是根据课程查找选课的学生,则可建立如下图所示的聚集文件。

三、设计题某工程项目公司的信息管理系统的部分关系模式如下:
职工(职工编号,姓名,性别,居住城市);
项目(项目编号,项目名称,状态,城市,负责人编号);
职工项目(职工编号,项目编号)。
其中:
1)一个职工可以同时参与多个项目,一个项目需要多个职工参与。
2)职工的居住城市与项目所在城市来自同一个域。
3)每个项目必须有负责人,且负责人为职工关系中的成员。
4)项目状态有两个:0表示未完成,1表示已完成。
写出下列SQL语句。1. 查询至少参加两个项目的职工编号和参与的项目数。
SELECT 职工编号,COUNT (项目编号) FROM 职工项目 GROUP BY 职工 HAVING COUNT (项目编号)>=2;
2. 写出建立视图emp和进行授权的SQL语句。
GRANT SELECT ON emp TO U1;
3. 根据下面描述为该学校教务管理设计概念模型。
1)该系统包括教师、学生、班级、系、课程、课程使用教材等信息。
2)教师有教师编号、姓名、职称、电话等;学生有学号、姓名、性别、出生年月等;班级有班级号、班主任信息等;系有系编号、系名和系办公室电话等;课程有课程号、课程名、学分、上课时间和课时等。
3)每个学生属于一个班,每个班属于一个系,每个教师也属于一个系。
4)每个班的班主任由一名教师担任,而一名教师只能担任一个班的班主任。
5)一名教师可以教多门课,一门课程也可以由多名教师主讲。
6)一名学生可以选修多门课程,一门课程可被若干同学选修,一名学生选中的课程若已经学完,应该记录相应的成绩。
7)一门课程使用多本参考书,一本参考书只用于一门课程。
8)学生名、教师名允许有重名,教师编号、学号可作为唯一标识。
系实体集属性:系号,系名,系主任,系办公室电话
班级实体集:班级号,学生人数,教师编号
学生实体集属性:学号,姓名,性别,出生日期
教师实体集属性:教师编号,教师名,职称,性别,出生日期,工资,电话
课程实体集属性:课程号,课程名,学分,上课时间,客容量
教师实体集属性:课程号,课程名,学分,上课时间,客容量
教材实体集属性:教材号,教材名,出版社,第一作者