怎样评价《数据库系统概念》这本书

就说中文版。
第一点是重复啰嗦。看第三章时:好哇,来讲各种联系各种查询语句啦。每一种都解释含义、举栗子哇。 后来我翻到第六章,发现它就像前面没有讲过一样地开始重新介绍一些东西了……若是前面只简要介绍大体概念,就别说这么详细好吗,容易让人抓不住重点。
就说那笛卡尔积。我想是可以类比线性代数里的矩阵相乘,很容易理解的。举两个三五列的关系表作为例子,就可以看明白了。书里弄出十几个属性几十行的一张大表让人看半天也就算了,重点是第三章37页,和第六章126页的那两张表,真的是一模一样。我一瞬间以为看书看穿越了……就这么一个东西这么费劲弄两遍累不累啊。
第二点是表达方式,信息密度。首先,翻译是带有原罪的,工科参考书也难逃过这一点。和国内的比起来,英文作者的参考书句子读起来简单,描述甚至带有感情平易近人,普遍信息密度是不那么大的。但是在翻译之后,一些生搬中文教科书的说明模式、但事实上又和中国人表述时不同的表达习惯,给理解带来了无妄之负担。
比如中文版第四章,4.1.1第一段的最后一句和第二段的第一句。英文版的在第114页,是这么说的:“SQL support another form of join, in which an arbitrary join condition can be specified.The on condition allows a general predicate over the relations being joined.”这比四六级英语阅读可简单吧:SQL还支持另一种连接,可以任意指定连接条件。这个“on”条件可以在关系连接时和通用谓词搭配。
【怎样评价《数据库系统概念》这本书】 中文版是这样说的:“SQL支持另外一种形式的连接,其中可以指定任意的连接条件。on条件允许在参与连接的关系上设置通用的谓词。”“参与连接的关系上设置”这种句子就是把本来小的信息量通过陌生的表达方式无端增多了。而国内的高数、模电教材,再艰深的道理也难以见到这种表达。
而到了像依赖函数和范式这样的章节,有一点入门级的数学基础,过程上本来都是容易理解的。但是,首先,英文书上仔仔细细地把这点数学基础说了一遍,然后再加上这种翻译,简直就成了理解的重灾区。
要是不气沉丹田把手机开超级省电模式好好结合上下文理解,真的不想看它到底在说什么。
而痛苦的是,即使直接看英文版,这种问题也不能解决。你以为你很喜欢英文是吗你英文很好是吗阅读题全对是吧,一看你在看全英文室友们都投来了崇拜的目光装逼就要成功了是吧!
Naive! !
两周前,整整一个星期,看了一章。而且还是我先前听了讲的一章,复习验证的态度去看的。远不及昨晚一小时刷一章。习惯几百页的英文也需要好大的毅力呢。
反正已经考完了也不会再去看了呢。就酱,虎溪好美,说了好久就为这鬼数据库一直没去。元旦快乐。

■网友
啰里八嗦,不如Database Management Systems写得好

■网友
那么国内的主流教材——王珊和萨师煊的《数据库系统概论》这本书怎么样,个人感觉书中的某些概念定义的不够准确,有的需要展开的内容也没有进行拓展。国内的计算机教材大多有大比例参照美国原版教材的嫌疑,参考、参照这无可厚非,关键是能把知识点讲清楚,把握好数据库技术作为软件开发的一个必备技能的特点,初衷和落脚点都应该是让学生能够熟练地掌握数据库技术,当然在此基础上,有兴趣的同学也会对某些数据库较新的理论和技术的探究进行深入学习。中国的计算机教育模仿美国,这本身是可取的,但是应该结合中国学生的实际特点,因材施教。制定出一个合理地、较为完善的数据库教学方案。

■网友
我来唱个反调。其实这本书是相当不错的。我曾经也觉得这本书很晦涩难懂,但认真学过一遍、还在研究生期间当过了几个学期的数据库助教之后,我认为:它只能这样晦涩难懂。它作为一本给科班本科生打下理论基础的课本,实际上已经达到了它的设计要求——但也因此引入了结构化数据的理论的讲解、以及一些晦涩的概念的介绍,无疑增加了理解上的难度;而本身晦涩的概念经过了一通中文翻译,又变得更加难懂了。


推荐阅读