【学习目标】
��本章是关系数据库的基础,课程从关系数据库的基本概念表和关系开始,逐步深入到关系代数和关系演算。因此,本章的学习目标主要是深入理解关系数据库中的基本概念表和关系,能够熟练地掌握和运用关系代数以及扩展关系代数运算。
【学习方法】
��除了深刻理解关系数据库的基本概念以外,并且要多动手做一些有关关系代数运算的练习,以便加深理解,达到学习目标。另外,要查阅有关的最新资料,加深对数据库视图概念和实体化视图概念的理解,并在力所能及的情况下完成一篇有关视图的小论文,或者是完成一个维护实体化视图的项目。
【学习指南】
��早期的数据库管理系统建立在网状模型或层次模型的基础上,而在商用数据库管理系统中,关系模型现在已经成为主要的数据模型。同关系模型相比,前两种较早的模型与低层实现的结合更加紧密,而关系模型则具有坚实的理论基础,在实践中得到广泛的应用,这在后面的学习中会逐渐体会到。本章的重点是3.1节、3.2节、3.4节、和3.6节,难点是3.2节和3.4节,其中3.3节的内容要求大家在课下自学。请你仔细阅读教材的第二章"关系数据库"和参考书的第3章"关系模型"。
【预习思考题】
��1、 你是如何理解关系数据库中表和关系这两个概念的?它们之间有什么区别和联系?
��2、 什么是数据库模式?关系模式和关系一样吗?
��3、 关系模式的超码是如何形式化定义的?关系模式的主码又是如何根据导出该关系模式的实体集和联系集的主码确定的?
��4、 关系代数有哪些基本运算和附加运算?附加运算能增加关系代数的表达能力吗?
��5、 关系代数运算的结果是什么?它是如何处理运算结果中重复的行的呢?
��6、 什么是关系代数表达式?关系代数的形式化定义是什么?
��7、 在进行笛卡尔积运算时,不同关系的同名属性是如何处理的?更进一步,同一关系进行笛卡尔积运算时应当如何处理?
��8、 命名运算的作用是什么?
��9、 关系代数中附加运算的作用是什么?
��10、 Theta连接与自然连接的本质区别是什么?
��11、 命名运算和赋值运算有什么区别?
��12、 元组关系演算与域关系演算的区别是什么?
��13、 关系演算表达式的安全性指的是什么?
��14、 扩展关系代数运算主要对基本关系代数运算在哪几个方面进行了扩展?扩展关系代数运算的主要作用是什么?
��15、 外连接的作用是什么?它有哪三种形式?三者之间有什么区别和联系?外连接与自然连接的关系是什么?
��16、 聚集函数的输入与输出各是什么?什么是分组聚集?
��17、 什么是数据库的删除、插入和更新?从关系代数的角度来看,数据库的修改与查询有什么关系?
��18、 什么是视图?为什么要建立视图?
��19、 什么是实体化视图?为什么要建立实体化视图?它有什么弊端?
��
|