本书由于内容全面,实践性强,已经成为了数据库课程的首选教材。全书分为数据库基础、应用程序开发、存储与索引、查询评估、事务管理、数据库设计与调整、高级主题等七大部分,对数据库的设计与使用、数据库管理系统基本原理与实现技术,以及数据库研究的新进展做了详细论述。本书以一个网上书店的完整设计为例,介绍了数据库系统的具体实现过程。第3版保留了前两版的传统优点,并且加入了许多关于数据库最新研究和发展的内容,每章后面精选的复习题和练习使本书更吸引人,可读性更强。
\r\n 本书可作为高等院校计算机专业本科生、研究生和教材的教材和教学参考,对于从事数据库系统研究以及学习数据库系统技术的人也很有参考价值。
\r\n
\r\n
\r\n
第一部分 数据库基础\r\n 第1章 数据库系统概述\r\n 1.1 管理数据\r\n 1.2 历史回顾\r\n 1.3 文件系统和数据库管理系统\r\n 1.4 数据库管理系统的优点\r\n 1.5 数据库管理系统中数据的描述和存储\r\n 1.5.1 关系模型\r\n 1.5.2 数据库管理系统的抽象级别\r\n 1.5.3 数据独立性\r\n 1.6 数据库管理系统中的查询\r\n 1.7 事务管理\r\n 1.7.1 事务的并发执行\r\n 1.7.2 未完成的事务和系统崩溃\r\n 1.7.3 注意要点\r\n 1.8 数据库管理系统的结构\r\n 1.9 与数据库打交道的人\r\n 1.10 复习题\r\n 第2章 实体联系模型\r\n 2.1 数据库设计与ER图\r\n 2.1.1 其他步骤\r\n 2.2 实体、属性和实体集\r\n 2.3 联系和联系集\r\n 2.4 ER模型的其他特征\r\n 2.4.1 码约束\r\n 2.4.2 参与约束\r\n 2.4.3 弱实体\r\n 2.4.4 类层次\r\n 2.4.5 聚合\r\n 2.5 用ER模型进行概念数据库设计\r\n 2.5.1 实体对属性\r\n 2.5.2 实体与联系\r\n 2.5.3 二元与三元联系\r\n 2.5.4 聚合与三元联系\r\n 2.6 大型企业的概念数据库设计\r\n 2.7 统一建模语言\r\n 2.8 案例研究:网上书店\r\n 2.8.1 需求分析\r\n 2.8.2 概念设计\r\n 2.9 复习题\r\n 第3章 关系模型\r\n 3.1 关系模型简介\r\n 3.1.1 使用SQL创建和修改关系\r\n 3.2 关系的完整性约束\r\n 3.2.1 码约束\r\n 3.2.2 外码约束\r\n 3.2.3 一般约束\r\n 3.3 完整性约束的强制执行\r\n 3.3.1 事务与约束\r\n 3.4 查询关系数据\r\n 3.5 逻辑数据库设计:从ER模型到关系模型\r\n 3.5.1 从实体集到关系表\r\n 3.5.2 从联系集(不包括约束)到关系表\r\n 3.5.3 转换带码约束的联系集\r\n 3.5.4 转换带有参与约束的联系集\r\n 3.5.5 转换弱实体集\r\n 3.5.6 转换类层次\r\n 3.5.7 转换带聚合的ER图\r\n 3.5.8 ER模型到关系模型:更多的示例\r\n 3.6 视图简介\r\n 3.6.1 视图、数据独立性和安全\r\n 3.6.2 视图的更新\r\n 3.7 删除/修改关系表和视图\r\n 3.8 案例研究:网上书店\r\n 3.9 复习题\r\n 第4章 关系代数和演算\r\n 4.1 预备知识\r\n 4.2 关系代数\r\n 4.2.1 选择和投影\r\n 4.2.2 集合操作\r\n 4.2.3 重命名\r\n 4.2.4 连接\r\n 4.2.5 除\r\n 4.2.6 关系代数查询的其他示例\r\n 4.3 关系演算\r\n 4.3.1 元组关系演算\r\n 4.3.2 域关系演算\r\n 4.4 代数与演算的表达能力\r\n 4.5 复习题\r\n 第5章 SQL:查询、约束与触发器\r\n第二部分 应用程序开发\r\n 第6章 数据库应用开发\r\n 第7章 Internet应用\r\n第三部分 存储与索引\r\n 第8章 存储与索引概述\r\n 第9章 存储数据:磁盘和文件\r\n 第10章 树结构索引\r\n 第11章 基于哈希的索引\r\n第四部分 查询评估\r\n 第12章 查询求解概述\r\n 第13章 外排序\r\n 第14章 关系操作求解\r\n 第15章 典型的关系查询优化器\r\n第五部分 事务管理\r\n 第16章 事务管理概述\r\n 第17章 并发控制\r\n 第18章 崩溃恢复\r\n第六部分 数据库设计与调整\r\n 第19章 模式求精与范式\r\n 第20章 物理数据库设计和调整\r\n 第21章 安全与认证\r\n第七部分 高级主题\r\n 第22章 并行与分布式数据库\r\n 第23章 对象数据库系统\r\n 第24章 演绎数据库\r\n 第25章 数据仓库与决策支持\r\n 第26章 数据挖掘\r\n 第27章 信息检索和XML数据\r\n 第28章 空间数据管理\r\n 第29章 其他专题\r\n 第30章 MINIBASE教学辅助软件\r\n 参考文献\r\n\r\n\r\n \r\n
数据库管理系统(DBMS)是管理信息的基本工具,是现代计算环境中的一个核心部分。随着计算机软硬件技术的飞速发展,以及计算机系统在各个行业的广泛应用,数据库管理系统在实践中也得到了广泛的使用。数据库管理系统的原理和实践也是计算机科学与技术课程的有机组成部分,它是计算机科学与技术教育中必不可少的环节。
本书的内容由浅入深,几乎覆盖了现代DBMS的所有内容,尤其是关系数据库管理系统。本书结构清晰、组织简洁,可以作为计算机专业本科生、研究生或其他相关人员的数据库入门课程或高级教程的教材。
本书主要分为七大部分。第一部分主要介绍数据库系统、ER模型和关系模型的相关知识,讲述了如何创建和使用数据库,涵盖了数据库的设计与查询,以及对SQL查询语句的深入研究。教师可以根据自己的需要省略某些内容(例如,关系演算、ER模型或者SQI。查询语句的某些部分)。但是,这些内容对每个学习数据库知识的学生来说都是很重要的,所以我们建议教师尽可能地详细讲解这些知识。
在其余的六部分中,每一部分或者侧重应用,或者侧重系统。三个侧重系统的部分都有对本部分内容进行概述的章节,例如,第8章是对存储与索引的概述。教师可以单独讲授这些概述章节,也可以将其作为某部分的一章。在侧重应用的课程中,第8章可能是惟一涉及到存储和索引的章节,然而在侧重系统的课程中,可以从第9-11章中挑出一章来对第8章的内容进行补充。数据库设计与调整部分,主要讲述如何为实现安全访问而进行性能调整与设计。这些侧重应用的部分最好是在学生们掌握了数据库系统结构之后再讲授要好一些。
和第2版相比,第3版的内容做了较大的修改,主要使本书能面向两个侧重点:一个是侧重于应用,另一个是侧重于系统。侧重于应用的入门课程的大纲如下:数据库基础部分,应用程序开发部分,接着第三、四和五部分的概述章节,以数据库设计与性能调整结束。侧重于系统的入门课程,包括数据库基础部分和侧重系统的部分。对于侧重系统的课程,重要的是编程计划的时间安排(例如,使用Minibase),这需要早接触系统方面的知识。总之,教师可以根据实际情况,在讲述本书的内容时有所侧重与删减。
本书由清华大学计算机系周立柱教授组织并参加了具体的翻译和审校工作,参加翻译的人员还有张志强、李超和王煜等。周立柱和冯建华对全书进行了最后的审校。
限于译者水平,译文中疏漏和错误难免,欢迎批评指正。