《数据库系统教程》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:施伯乐,丁宝康,汪卫编著
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2008
  • ISBN:7040242249
  • 页数:414 页
图书介绍:本书第1版列为教育部“面向21世纪课程教材”。第2版作了较大的修改和补充,增加了关系逻辑、递归SQL、对象联系图、UML的类图、ODMG标准、ODBC和XML等内容。这次第3版被教育部列为“‘十一五’国家级规划教材”,对内容又作了修订和充实。本书详细介绍数据库系统的基本原理、方法和发展趋势。全书分为上、下两篇。上篇为基础篇,介绍传统的数据库技术,内容包括:数据库系统基本概念、关系运算理论、SQL语言、规范化设计理论、数据库设计与ER模型、存储结构和系统实现技术。下篇为发展篇,介绍数据库技术的发展,内容包括:对象数据库系统、分布式数据库系统、开放数据库互连(ODBC)技术、XML技术和现代信息集成技术。本书是作者长期从事数据库教学和科研活动所获成果的结晶。全书内容丰富,叙述清楚严谨,每章后面均有适量的习题,适于教和学。与本书配套,还有习题解答书等出版物。本书可作为高等院校计算机有关专业的数据库课程教材,也可供从事信息领域工作的科技人员和工程技术人员以及其他有关人员参阅。

上篇 基础篇 3

第1章 数据库概论 3

1.1 引言 3

1.2 数据库的由来和发展 4

1.2.1 人工管理阶段 5

1.2.2 文件系统阶段 5

1.2.3 数据库阶段 7

1.2.4 高级数据库阶段 10

1.3 数据描述 11

1.3.1 概念设计中的数据描述 11

1.3.2 逻辑设计中的数据描述 12

1.3.3 物理设计中的数据描述 13

1.3.4 数据联系的描述 14

1.4 数据抽象的级别 16

1.4.1 数据抽象的过程 16

1.4.2 概念模型 17

1.4.3 逻辑模型 18

1.4.4 外部模型 23

1.4.5 内部模型 23

1.4.6 三层模式和两级映像 24

1.4.7 高度的数据独立性 25

1.5 数据库管理系统 26

1.5.1 DBMS的工作模式 26

1.5.2 DBMS的主要功能 27

1.6 数据库系统 28

1.6.1 DBS的组成 28

1.6.2 DBS的全局结构 30

1.6.3 DBS结构的分类 32

1.6.4 应用程序的演变 35

1.6.5 DBS的效益 35

1.7 小结 36

习题1 37

第2章 关系模型和关系运算理论 39

2.1 关系模型的基本概念 39

2.1.1 基本术语 39

2.1.2 关系的定义和性质 40

2.1.3 关系模型的3类完整性规则 41

2.1.4 关系模型的3层体系结构 42

2.1.5 关系模型的形式定义和优点 44

2.1.6 关系查询语言和关系运算 44

2.2 关系代数 45

2.2.1 关系代数的5个基本操作 45

2.2.2 关系代数的4个组合操作 47

2.2.3 关系代数运算的应用实例 49

2.2.4 关系代数的7个扩充操作 50

2.3 关系演算 53

2.3.1 元组关系演算 54

2.3.2 域关系演算 56

2.3.3 关系运算的安全约束和等价性 58

2.4 关系代数表达式的优化 59

2.4.1 关系代数表达式的优化问题 60

2.4.2 关系代数表达式的等价变换规则 60

2.4.3 关系代数表达式的启发式优化算法 62

2.5 关系逻辑 65

2.5.1 关系逻辑的成分 65

2.5.2 规则的安全性 66

2.5.3 从关系代数到关系逻辑的转换 67

2.5.4 递归过程 70

2.5.5 关系逻辑与关系代数的差异 70

2.6 小结 70

习题2 71

第3章 关系数据库语言SQL 74

3.1 SQL简介 74

3.1.1 SQL的产生和发展 74

3.1.2 SQL数据库的体系结构 75

3.1.3 SQL的组成 76

3.1.4 SQL的特点 76

3.2 SQL的数据定义 76

3.2.1 SQL模式的创建和撤销 76

3.2.2 基本数据类型 77

3.2.3 基本表的创建、修改和撤销 78

3.2.4 索引的创建和撤销 80

3.3 SQL的数据查询 81

3.3.1 SELECT查询语句的基本结构 81

3.3.2 SELECT语句的完整结构 87

3.3.3 数据查询中的限制和规定 89

3.3.4 条件表达式中的比较操作 90

3.3.5 嵌套查询的改进写法 94

3.3.6 基本表的连接操作 95

3.3.7 SQL3中的递归查询 96

3.4 SQL的数据更新 97

3.4.1 数据插入 97

3.4.2 数据删除 98

3.4.3 数据修改 99

3.5 视图 100

3.5.1 视图的创建和撤销 100

3.5.2 视图的更新 101

3.6 嵌入式SQL 102

3.6.1 嵌入式SQL的实现方式 102

3.6.2 嵌入式SQL的使用规定 102

3.6.3 嵌入式SQL的使用技术 104

3.6.4 动态SQL语句 107

3.7 存储过程与SQL/PSM 108

3.7.1 数据库存储过程与函数 108

3.7.2 SQL/PSM 110

3.8 小结 111

习题3 112

第4章 关系数据库的规范化设计 116

4.1 关系模式的设计问题 116

4.1.1 关系模式的外延和内涵 116

4.1.2 关系模式的冗余和异常问题 116

4.1.3 关系模式的非形式化设计准则 118

4.1.4 本章的符号规定 118

4.2 函数依赖 118

4.2.1 函数依赖的定义 119

4.2.2 FD的逻辑蕴涵 120

4.2.3 FD的推理规则 120

4.2.4 FD和关键码的联系 122

4.2.5 属性集的闭包 122

4.2.6 FD推理规则的完备性 123

4.2.7 FD集的最小依赖集 123

4.3 关系模式的分解特性 124

4.3.1 模式分解问题 124

4.3.2 无损分解 125

4.3.3 模式分解的优缺点 127

4.3.4 无损分解的测试方法 127

4.3.5 保持函数依赖的分解 129

4.3.6 模式分解与模式等价问题 130

4.4 关系模式的范式 130

4.4.1 第一范式 131

4.4.2 第二范式 131

4.4.3 第三范式 132

4.4.4 BCNF 133

4.4.5 分解成BCNF模式集的分解算法 134

4.4.6 分解成3NF模式集的合成算法 135

4.4.7 模式设计方法小结 135

4.5 模式的进一步规范化处理 135

4.5.1 多值依赖的定义 136

4.5.2 关于FD和MVD的推理规则集 137

4.5.3 第四范式 138

4.5.4 嵌入多值依赖 138

4.5.5 连接依赖和第五范式 139

4.6 小结 141

习题4 142

第5章 数据库设计与ER模型 147

5.1 数据库设计的全过程 147

5.1.1 规划阶段 148

5.1.2 需求分析阶段 148

5.1.3 概念设计阶段 149

5.1.4 逻辑设计阶段 150

5.1.5 物理设计阶段 151

5.1.6 数据库的实现 151

5.1.7 数据库的运行与维护 153

5.2 ER模型 154

5.2.1 ER模型的基本元素 154

5.2.2 属性的分类 156

5.2.3 联系的设计 158

5.2.4 ER模型的操作 161

5.2.5 采用ER模型的数据库概念设计 162

5.3 ER模型到关系模型的转换 168

5.3.1 ER图转换成关系模式集的算法 168

5.3.2 采用ER模型的逻辑设计步骤 171

5.4 ER模型实例分析 171

5.4.1 库存管理信息系统的ER模型及转换 171

5.4.2 公司车队信息系统的ER模型 173

5.4.3 人事管理信息系统的ER模型 174

5.4.4 旅游管理信息系统的ER模型 175

5.5 增强的ER模型 176

5.5.1 弱实体与强实体 176

5.5.2 子类实体与超类实体 177

5.6 小结 178

习题5 179

第6章 数据库的存储结构 182

6.1 文件组织 182

6.1.1 定长记录 182

6.1.2 变长记录 184

6.2 文件结构 187

6.2.1 4种文件结构 187

6.2.2 顺序文件 188

6.2.3 聚集文件 188

6.3 索引技术 189

6.3.1 索引机制 189

6.3.2 有序索引的分类 190

6.3.3 主索引 190

6.3.4 辅助索引 193

6.3.5 B+树索引文件 194

6.3.6 B树索引文件 200

6.4 散列技术 201

6.4.1 散列机制 201

6.4.2 散列索引 204

6.4.3 静态散列中的问题 205

6.4.4 可扩充散列结构 205

6.5 多键访问 210

6.5.1 单键查询的问题 210

6.5.2 网格文件 211

6.5.3 分区散列技术 212

6.6 小结 212

习题6 213

第7章 系统实现技术 216

7.1 事务 216

7.1.1 事务的定义 216

7.1.2 事务的ACID性质 217

7.1.3 事务的状态变迁图 218

7.2 数据库的恢复 219

7.2.1 存储器结构 219

7.2.2 恢复的基本原则和实现方法 221

7.2.3 故障类型和恢复方法 222

7.2.4 检查点技术 223

7.2.5 SQL对事务的支持 224

7.3 数据库的并发控制 224

7.3.1 并发操作带来的3个问题 224

7.3.2 封锁技术 226

7.3.3 封锁带来的问题 229

7.3.4 并发操作的调度 231

7.3.5 SQL对事务并发处理的支持 232

7.3.6 基于时标的并发控制 232

7.4 数据库的完整性 234

7.4.1 完整性子系统 234

7.4.2 SQL中的完整性约束 235

7.4.3 SQL3中的触发器 239

7.5 数据库的安全性 242

7.5.1 安全性问题 242

7.5.2 SQL中的安全性机制 243

7.5.3 常用的安全性措施 246

7.6 小结 249

习题7 250

下篇 发展篇 255

第8章 对象数据库系统 255

8.1 面向对象的数据类型系统 256

8.2 对象联系图 257

8.2.1 对象联系图的成分 257

8.2.2 数据的概化/特化 259

8.3 使用UML类图对概念对象建模 260

8.3.1 统一建模语言概述 260

8.3.2 用类图表达类和关联 260

8.3.3 用类图表达关联类 263

8.3.4 用类图表达概化/特化 264

8.3.5 用类图表达聚合 265

8.4 ORDB的定义语言 266

8.4.1 从关系模型到对象关系模型的演变 266

8.4.2 继承性的定义 268

8.4.3 引用类型的定义 270

8.5 ORDB的查询语言 272

8.5.1 对SELECT语句的新规定 273

8.5.2 嵌套与解除嵌套 274

8.5.3 复合值的创建和查询 275

8.5.4 Oracle中查询的两种技术 276

8.5.5 函数和过程 277

8.6 OODBS的基本概念 281

8.6.1 ODMG标准 282

8.6.2 OODBS的定义 283

8.6.3 OODB的基本概念 283

8.7 ODMG对象模型 285

8.7.1 对象和文字 286

8.7.2 接口、类和继承 287

8.7.3 类外延、关键码和工厂对象 288

8.7.4 ODMG ODL 289

8.8 ODMG OQL 290

8.8.1 OQL中的SELECT语句 291

8.8.2 OQL表达式的附加格式 293

8.8.3 OQL中对象的赋值和建立 295

8.8.4 C++语言的绑定 296

8.9 OODB与RDB、ORDB的比较 297

8.9.1 OODB与RDB在概念设计上的区别 297

8.9.2 OODB与ORDB的比较 298

8.10 小结 299

习题8 300

9.5.3 基于连接的优化方法 321

9.6 分布式数据库中的并发控制和恢复技术 322

9.6.1 DDB中的问题 322

9.6.2 基于数据项识别副本的分布式并发控制 322

9.6.3 基于投票方法的分布式并发控制 323

9.6.4 分布式恢复 324

9.7 小结 324

习题9 325

第9章 分布式数据库系统 303

9.1 DDBS的定义和特点 303

9.1.1 从集中式、分散式到分布式 303

9.1.2 DDBS的定义 304

9.1.3 DDBS的特点 305

9.1.4 DDBS的优缺点 306

9.1.5 DDBS的分类 308

9.2 分布式数据存储 308

9.2.1 数据分片 308

9.2.2 数据分配 309

9.3 DDB的体系结构 310

9.3.1 体系结构 311

9.3.2 分布透明性 313

9.4 DDBMS 314

9.4.1 DDBMS的组成 314

9.4.2 DDBMS的功能 315

9.4.3 DDBMS的组成 315

9.4.4 DDBMS的同构性程度和局部自治性程度 316

9.4.5 FDBS的异构性 317

9.4.6 FDBS的5层模式结构 318

9.5 分布式查询处理 318

9.5.1 查询代价的估算方法 318

9.5.2 基于半连接的优化策略 319

第10章 ODBC技术 327

10.1 中间件 327

10.1.1 中间件的定义 327

10.1.2 中间件的作用 328

10.2 ODBC简介 329

10.2.1 ODBC的概念 329

10.2.2 ODBC的体系结构 330

10.2.3 ODBC的特性 333

10.3 ODBC接口 334

10.3.1 ODBC应用程序的基本流程 334

10.3.2 ODBC句柄 335

10.3.3 数据源的连接与断开 337

10.3.4 SQL语句的执行 337

10.3.5 查询结果的获取 339

10.4 ODBC的符合性级别 340

10.4.1 API符合性的3个级别 340

10.4.2 SQL符合性的3个级别 341

10.4.3 ODBC API与SQL CLI之间的协调 342

10.4.4 SQL CLI与嵌入式SQL的比较 343

10.4.5 SQL CLI的应用 343

10.4.6 典型的数据库应用系统开发工具 347

10.5 小结 347

习题10 348

第11章 XML技术 349

11.1 XML的由来 349

11.1.1 从SGML、HTML到XML 349

11.1.2 XML和HTML的区别 350

11.1.3 XML在数据交换中的作用 352

11.2 XML文档的语法成分 352

11.2.1 XML声明 352

11.2.2 元素 353

11.2.3 属性 355

11.2.4 引用 355

11.2.5 注释 356

11.2.6 名字空间 356

11.3 文档类型定义 357

11.3.1 元素类型声明 357

11.3.2 属性声明 358

11.3.3 DTD的局限性 361

11.4 XML模式 361

11.4.1 XML模式的示例 361

11.4.2 XML模式的基本成分 363

11.4.3 XML模式的优点 366

11.5 XML查询和转换 366

11.5.1 XPath 367

11.5.2 XSLT 369

11.5.3 XQuery 371

11.5.4 XML API 372

11.6 XML数据的存储 373

11.6.1 关系数据库 373

11.6.2 非关系的数据存储 374

11.7 小结 375

习题11 375

第12章 现代信息集成技术 377

12.1 数据仓库 377

12.1.1 DW概述 377

12.1.2 DW的组织结构 380

12.1.3 DW存储的多维数据模型 381

12.1.4 数据处理 383

12.1.5 DW的设计和发展阶段 387

12.2 联机分析处理技术 391

12.2.1 OLAP概述 392

12.2.2 OLAP的数据组织 396

12.2.3 OLAP应用开发实例 398

12.3 数据挖掘 399

12.3.1 DM概述 400

12.3.2 DM与DW、OLAP的联系与区别 401

12.3.3 DM应用过程 402

12.3.4 DM的分析方法和用到的技术 404

12.3.5 DM的应用领域 405

12.4 新决策支持系统概述 406

12.4.1 DSS的发展历程 406

12.4.2 综合DSS的结构图 408

12.5 小结 410

习题12 411

参考文献 413