本书第二章涉及到了具体的内容,这部分内容是数据库系统的理论基础,是本书的核心之一,我当初准备用两天的时间完成对第二章的阅读和分析,不过现在看来似乎没那么简单,事实上到现在为止我也没有完全完成2.4节及之前的所有习题。不过大致的内容已经差不多清楚了,我会专门留给自己一些时间来思考难题。
进入正题,这一章讲述的是关系代数,何为关系代数,我没有认知得很清楚,但是学校开设了数理逻辑与集合论这门课,关系代数与这门课有着非常密切的联系,因此如果有数理逻辑和集合论基础,学习起这一章应该不会花费太大的力气至少在2.5以前是这样的(因为我只看到2.4),不过课后的习题中某部分还是比较难的。下面说说我学习这一章的思考:
书中有这样一个问题:R ⋈ S和 R ⋈ cS ,其中条件c为R.A=S.A,问两者的区别。
我自己的理解是这样的: 后者的结果中至少存在两个相同的属性,而前者任意两个属性都是不同的,从它们的定义就能够区分出来。
还有题目要求对关系运算符的单调性作讨论,我的答案是这样的:
并、交、选择、笛卡尔积、连接和重命名是单调的,而差和投影是不单调的。
本想写出证明,但是符号不方便打,就算了。
还有一题:R⋉S,让用三种方法来定义它。
第一种:Π R中所有属性(R⋈S)
第二种:Π R中所有属性(σR.A=S.A(RXS)).
第三种:把RXS再用定义展开,哈哈,取巧了。。。
总之这一章都是理论性的内容,我觉得练习多做一些,熟悉就行,不想做过多的研究,与我的本意也不符。
就这么多,吃饭去了。。。。