四、简答题(每小题4分,共16分)
1.数据独立性与数据联系这两个概念有什么区别? 2.什么是数据库的恢复?恢复的基本原则是什么?恢复如何实现? 3.关系规范化过程实质上是对关系不断分解的过程。分解关系的基本规则是什么? 4.为什么要对关系代数表达式进行优化? 五、程序设计题(每小题3分,共18分)
现有如下关系:
职工(职工号,姓名,性别,职务,家庭地址,部门编号)
部门(部门编号,部门名称,地址,电话)
保健(保健卡编号,职工号,检查身体日期,健康状况)
1.用关系代数表达式写出,查找所有女科长的姓名和家庭地址;
2.用关系代数表达式写出,查找“办公室”的科长姓名和家庭地址;
3.用关系代数表达式写出,查找“财务科”中健康状况为“良好”的职工姓名和家庭地址。
4.用SQL语句写出,删除职工关系表中职工号为“3016”的记录;
5.用SQL语句写出,将职工号为“3061”的职工的健康状况改为“一般”;
6.用SQL语句写出,建立健康状况为“差”的职工的视图。六、综合应用题(每小题5分,共10分)
假设某公司的业务规则如下:
(1)公司下设几个部门,如技术部、财务部、市场部等。
(2)每个部门承担多个工程项目,每个工程项目属于一个部门。
(3)每个部门有多名职工,每一名职工只能属于一个部门。
(4)一个部门可能参与多个工程项目,且每个工程项目有多名职工参与施工。根据职工在工程项目中完成的情况发放酬金。
(5)工程项目有工程号、工程名两个属性;部门有部门号、部门名称两个属性;职工有职工号、姓名、性别属性;
问题:
1.根据上述规则设计E-R模型。
2.将E-R模型转换成关系数据模型,并指出每个关系的主键和外键。