数据库原理与技术(Oracle版) (第3版)(重点大学计算机专业系列教材)
内容简介
书籍 计算机书籍
本书是一部关于数据库系统的基本原理与方法、现代技术及应用的教科书,全书分为两篇: 第1篇介绍知识、理论与方法,描述数据库基础知识、关系模型与关系理论、数据库语言及数据库设计方法。第2篇介绍技术、应用及发展,描述数据库管理系统技术、对象关系数据库方法,介绍数据库产品Oracle 11g的主要技术、编程及开发应用示例,讨论现代数据库及其高级论题。
本书是作者多年从事数据库原理课程教学与科研实践的结晶,注重核心理论的描述、注意理论和应用技术的结合。删减繁冗,同时又根据本学科教学科研发展的动态,介绍新型数据库系统的特点及相关知识,本书有配合教学的课程网站,以方便师生的教与学。
本书可作为高等院校计算机及相关专业学生数据库课程的教材,也可供从事信息领域工作的科技人员及其他人员参阅。
目录
第1篇知识、理论与方法
第1章数据库系统概论
1.1数据库与数据管理
1.1.1数据库的基本概念
1.1.2数据管理技术的发展
1.2数据模型与信息模型
1.2.13个世界及其联系
1.2.2信息模型的表示
1.2.3数据模型的组成
1.2.4基本数据模型
1.3数据库系统结构
1.3.13级模式结构
1.3.2数据库系统体系结构
1.3.3数据库系统的组成
1.3.4数据库管理系统
1.4本章小结
习题1
第2章关系数据库
2.1关系模型
2.1.1关系模型的特点
2.1.2关系数据结构
2.1.3关系数据操作
2.1.4关系的完整性约束
2.2关系代数
2.2.1集合运算
2.2.2关系运算
2.2.3扩充的运算
2.3查询优化
2.3.1查询处理与查询优化
2.3.2关系代数式的等价规则
2.3.3语法树的优化
2.3.4Oracle数据库优化器
2.4本章小结
习题2
第3章数据库语言及访问接口
3.1SQL 简介
3.1.1SQL的特征
3.1.2SQL数据类型
3.2SQL的数据定义
3.2.1表的建立与删改
3.2.2索引的建立与删除
3.3SQL的数据查询
3.3.1单表查询
3.3.2多表查询
3.3.3连接查询
3.3.4递归查询
3.4SQL的数据更新
3.4.1插入数据
3.4.2删改数据
3.5SQL中的视图
3.5.1视图的概念
3.5.2创建与使用视图
3.5.3更新视图
3.6数据库访问技术
3.6.1数据库访问概述
3.6.2嵌入式SQL
3.6.3数据库标准接口
3.6.4对象访问接口
3.7本章小结
习题3
第4章关系数据库理论
4.1函数依赖
4.1.1关系模式的设计问题
4.1.2函数依赖的概念
4.1.3候选键的形式定义
4.2关系模式的规范化
4.2.1关系与范式
4.2.2第1范式(1NF)
4.2.3第2范式(2NF)
4.2.4第3范式(3NF)
4.2.5BC范式(BCNF)
4.2.6多值依赖与第4范式
4.3数据依赖公理
4.3.1公理及其推论
4.3.2闭包的概念及其计算
4.3.3函数依赖集的等价
4.3.4最小函数依赖集
4.4关系模式的分解
4.4.1等价模式分解的定义
4.4.2无损连接性与依赖保持性
4.4.3模式分解的算法
4.5本章小结
习题4
第5章数据库设计
5.1数据库设计概述
5.1.1数据库设计的特点和方法
5.1.2数据库设计阶段及内容
5.2需求分析
5.2.1需求分析的任务
5.2.2需求分析的方法
5.2.3需求分析的工具
5.3概念结构设计
5.3.1概念结构设计的方法
5.3.2ER图及其扩展描述
5.3.3局部视图设计
5.3.4合并ER图
5.4逻辑结构设计
5.4.1逻辑结构设计的步骤
5.4.2ER图向关系模式的转换
5.4.3关系模式的优化
5.4.4用户子模式的设计
5.5数据库物理设计
5.5.1物理设计的内容和要求
5.5.2存取方法与存储结构
5.5.3性能评价
5.6数据库实施与维护
5.7本章小结
习题5
第2篇技术、应用及发展
第6章数据库保护与事务管理
6.1数据库的安全性
6.1.1安全性的基本概念
6.1.2安全性控制方法
6.1.3自主访问控制的实施
6.1.4Web数据库安全策略
6.1.5Oracle数据库的安全性
6.2数据库的完整性
6.2.1完整性控制的功能
6.2.2完整性约束的设计
6.2.3数据库触发器设计
6.2.4Oracle数据库的完整性
6.3事务管理与数据库恢复
6.3.1事务的基本概念
6.3.2数据库恢复技术
6.3.3故障恢复及事务管理
6.3.4Oracle数据库的恢复与闪回
6.4事务的并发控制
6.4.1并发控制的概念
6.4.2封锁与封锁协议
6.4.3并发调度的可串行性
6.4.4封锁的粒度
6.4.5Oracle的并发控制
6.5本章小结
习题6
第7章对象关系数据库
7.1面向对象的数据模型
7.1.1基于对象的数据库概述
7.1.2面向对象数据模型
7.2面向对象的建模方法
7.2.1统一建模语言——UML
7.2.2UML的表示法
7.2.3UML的信息建模
7.2.4UML的信息模型设计
7.3对象关系数据库
7.3.1对象关系数据库概述
7.3.2对象关系数据模型
7.3.3对象关系数据库产品
7.3.4Oracle的复杂数据类型
7.4本章小结
习题7
第8章Oracle数据库及编程
8.1Oracle 数据库产品
8.1.1Oracle 数据库概述
8.1.2Oracle数据库结构
8.2过程化SQL
8.2.1过程化SQL简介
8.2.2PL/SQL块结构
8.2.3数据类型与变量
8.3PL/SQL控制语句
8.3.1条件控制语句
8.3.2循环控制语句
8.3.3子程序定义与调用
8.4游标的使用
8.4.1游标及其属性
8.4.2带参数与带锁游标
8.5PL/SQL数据结构
8.5.1记录类型
8.5.2集合类型
8.5.3动态SQL的使用
8.6存储过程与存储函数
8.6.1存储过程的创建与使用
8.6.2存储函数的创建与调用
8.7数据库触发器
8.7.1触发器的创建
8.7.2带选项的触发器
8.7.3复合触发器及管理
8.8本章小结
习题8
第9章Oracle数据库应用
9.1学生成绩管理数据库系统
9.1.1系统需求与设计目标
9.1.2系统模式及开发环境
9.1.3系统功能设计
9.1.4数据库设计
9.1.5系统应用程序设计
9.1.6系统测试运行图
9.2新闻发布网站后台管理系统
9.2.1后台管理系统设计
9.2.2系统实现方式
9.2.3数据库表设计
9.2.4数据库编程
9.2.5新闻栏目管理
9.2.6新闻内容管理
9.3本章小结
习题9
第10章现代数据库技术及发展
10.1现代数据库技术概述
10.1.1数据库技术的发展
10.1.2现代数据库技术研究
10.2XML数据库
10.2.1XML数据库概述
10.2.2XML数据模型
10.2.3XML查询语言
10.3数据仓库与数据挖掘
10.3.1数据仓库的特征与组成
10.3.2数据仓库与联机分析
10.3.3多维数据的表示和操作
10.3.4数据挖掘
10.4新型数据库
10.4.1云数据库
10.4.2物联网数据库
10.5本章小结
习题10
附录A主要数据库产品简介
附录B录像出租公司数据库设计案例
B.1应用需求
B.2需求分析
B.2.1确定任务与目标
B.2.2收集系统的详细信息
B.2.3分析用户与数据关系
B.2.4确定分公司的用户需求
B.2.5确定系统需求
B.3概念结构设计
B.3.1建立局部概念结构
B.3.2建立全局概念结构
B.4逻辑结构设计
B.5物理结构设计
参考文献
前言
本书总结了前一版(武汉大学“十一五”规划教材)的教学经验,是在前一版的基础上更新、扩展、编著而成的,其指导思想是帮助学生掌握数据库系统的基本原理与方法、现代技术及应用,了解新型数据库的特点及发展趋势,培养其数据库系统的研究、设计和应用能力。
从本书的组织结构来看,其内容分为两大篇。
第1篇知识、理论与方法,包括第1~第5章,介绍数据库基础知识、数据库标准语言及访问接口,描述关系数据库理论与方法,讨论关系数据库设计。
第2篇技术、应用及发展,包括第6~第10章,描述数据库安全性、完整性控制与事务管理技术,介绍对象关系数据库及相关方法,结合数据库产品Oracle 11g,介绍其主要技术、数据库编程及开发应用示例,讨论现代数据库及其高级论题。附录B给出了数据库设计案例。
与上一版相比,本书做了较多的更新和补充,删减烦琐、过时的内容,并在内容顺序上有所调整,以更利于知识的连贯性。主要增加了查询优化器的关键技术、新型复合触发器、复杂数据类型、数据库对象访问接口等内容的介绍; 更新了Oracle数据库的安全、完整、并发控制与恢复技术; 根据技术发展与应用需求,补充了云数据库、物联网数据库知识; 新增了第7~第9章的数据库应用技术(武汉大学的吴迪倩同学参与了其中的应用设计、英语翻译、图表制作等工作)。
本书具有以下特点:
(1) 删减繁冗,体现数据库的主流与核心技术、体现教学改革新成果。
(2) 知识更新,结合新产品讲解,突出理论与实践结合的特征。
(3) 可读性强,有大量例题与图示、丰富的教学辅助资源,内容简要、新颖。
本书力求诠释专业规范的思想,把新的课程体系和教学内容生动地表述出来,其动态更新的课件可从武汉大学课程中心的课程网站上获取。
本书受到2012年湖北省教学改革项目的支持,得到武汉大学计算机学院领导、同行们的大力帮助。作者在编著本书过程中参阅了相关的书籍、技术文档和网上资料等,在此对其作者表示感谢。
由于作者水平所限,书中难免存在不足或疏漏之处,恳请广大读者批评指正。
编者2013年11月于武汉大学