《现代数据库系统及应用教程》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:尹为民等编著
  • 出 版 社:武汉:武汉大学出版社
  • 出版年份:2005
  • ISBN:7307043998
  • 页数:559 页
图书介绍:本书是一部关于现代数据库系统的基本原理、技术和方法的教科书。介绍了数据库的基础知识,描述数据库的设计与实现、管理系统及其事务管理与数据库保护等。

前言 1

第一篇 数据库基础知识 1

第一章 数据库系统概论 3

1.1 引言 3

1.1.1 基本概念 3

1.1.2 数据管理技术的产生和发展 6

1.2 数据模型 10

1.2.1 信息的三个世界 10

1.2.2 概念模型及其扩展 13

1.2.3 数据模型的组成及新特征 18

1.2.4 层次模型 22

1.2.5 网状模型 27

1.2.6 关系模型 31

1.2.7 面向对象的数据模型 33

1.2.8 对象-关系数据模型 36

1.3 数据库系统结构 37

1.3.1 数据库系统的三级模式结构 37

1.3.2 数据抽象——三级数据库 41

1.3.3 数据库系统的体系结构 41

1.4 数据库系统 45

1.4.1 数据库系统的组成 45

1.4.2 数据库系统的特点 47

1.5 现代数据库系统及研究领域 49

1.5.1 数据库系统的新特征 50

1.5.2 数据库系统的研究领域 51

1.5.3 数据库系统的发展 52

1.5.4 现代数据库系统简介 54

1.6 小结 56

习题 57

第二章 关系数据库 59

2.1 关系数据库的基本概念 59

2.1.1 关系及其性质 59

2.1.2 关系模式与关系数据库 63

2.2 关系模型及其描述 64

2.2.1 关系模型的特点及组成 64

2.2.2 关系模型的数据操作 65

2.2.3 关系的完整性 65

2.3 关系代数 68

2.3.1 集合运算 70

2.3.2 专门的关系运算 71

2.3.3 扩充的关系运算 78

2.4 关系演算 81

2.4.1 元组关系演算 81

2.4.2 域关系演算 82

2.4.3 关系运算的安全限制及等价 83

2.4.4 域关系演算语言QBE 84

2.5 小结 89

习题 89

第三章 关系数据库语言SQL(SQL3) 94

3.1 SQL的特征 94

3.1.1 SQL的主要标准 94

3.1.2 SQL的功能特点 95

3.1.3 SQL的基本组成 96

3.1.4 SQL的数据类型 98

3.1.5 SQL环境 99

3.2.1 SQL模式的定义与撤销 101

3.2 SQL的数据定义 101

3.2.2 表的建立和删除 102

3.2.3 表的扩充和修改 103

3.2.4 域定义 104

3.2.5 索引的建立与删除 106

3.3 SQL的数据查询 107

3.3.1 单表查询 107

3.3.2 表达式与函数的使用 110

3.3.3 多表查询 113

3.3.4 自然连接与外连接 119

3.3.5 SQL中的空值处理 121

3.3.6 递归合并查询 123

3.4 SQL的数据更新 125

3.4.1 插入数据 125

3.4.2 修改数据 126

3.4.3 删除数据 127

3.4.4 构造数据类型 128

3.5 视图(View) 129

3.5.1 视图的概念及作用 129

3.5.2 创建与使用视图 130

3.5.3 更新视图 133

3.6.1 嵌入式SQL概述 134

3.6 嵌入式SQL 134

3.6.2 嵌入式SQL的工作原理 135

3.6.3 嵌入式SQL的程序组成 138

3.6.4 嵌入式SQL的使用技术 140

3.7 动态SQL 143

3.7.1 问题的提出 143

3.7.2 动态SQL的语句类型 144

3.7.3 动态SQL技术 144

3.8 数据库访问中间件 146

3.8.1 中间件 146

3.8.2 数据库访问中间件 147

3.8.3 ODBC 148

3.8.4 JDBC 150

3.9 小结 152

习题 153

第二篇 关系数据库设计与实现 155

第四章 关系数据理论 157

4.1 关系模式的设计问题 157

4.2 关系模式的规范化 159

4.2.1 函数依赖 160

4.2.2 码的形式定义 161

4.2.3 函数依赖与基础范式 162

4.2.4 多值依赖与第4范式 166

4.2.5 连接依赖与第5范式 170

4.3 数据依赖的公理系统 172

4.3.1 Armstrong公理 172

4.3.2 属性闭包的计算 176

4.3.3 函数依赖集的等价和覆盖 178

4.3.4 最小函数依赖集 179

4.4 关系模式的分解 181

4.4.1 等价模式分解的定义 181

4.4.2 无损连接性与依赖保持性 182

4.4.3 模式分解的算法 187

4.5.1 规范化的优缺点 192

4.5 规范化的问题 192

4.5.2 反规范化的设计 193

4.6 小结 194

习题 194

第五章 数据库设计 197

5.1 数据库设计概述 197

5.1.1 数据库设计的特点、目标和方法 198

5.1.2 数据库设计的内容和步骤 200

5.2 需求分析 202

5.2.1 需求分析的任务 203

5.2.2 需求分析的方法 204

5.2.3 数据流图 205

5.2.4 数据字典 207

5.3 概念结构设计 213

5.3.1 概念结构设计的方法和步骤 214

5.3.2 E-R图的扩展描述 216

5.3.3 局部视图设计 220

5.3.4 视图的集成 221

5.4 逻辑结构设计 224

5.4.1 逻辑结构设计的步骤 225

5.4.2 E-R模型向关系模型的转换 225

5.4.4 子模式设计 231

5.4.3 模型的优化 231

5.5 数据库物理设计 232

5.5.1 物理设计的内容和要求 232

5.5.2 存取方法与存储结构 233

5.5.3 性能评价 236

5.6 数据库实施与维护 236

5.7 数据库设计与应用实例 237

5.7.1 需求描述 237

5.7.2 分析事务需求 239

5.7.3 初步设计逻辑数据库 240

5.7.4 消除不相容的属性 244

5.7.5 检查模型及创建逻辑表 245

5.7.6 定义完整性约束 247

5.7.7 设计物理数据库 249

5.7.8 系统的开发 252

5.8 小结 257

习题 257

第三篇 数据库管理与保护 259

第六章 数据库管理系统 261

6.1 DBMS简介 261

6.1.1 DBMS的特点与功能 261

6.1.3 DBMS运行环境 263

6.1.2 DBMS的基本组成 263

6.1.4 用户访问数据库的工作过程 264

6.2 关系DBMS 265

6.2.1 关系DBMS的发展阶段 265

6.2.2 应用对关系DBMS的要求 267

6.2.3 关系DBMS的发展趋势 268

6.3 关系数据库的查询优化 269

6.3.1 查询处理与查询优化 269

6.3.2 查询优化的一般策略 272

6.3.3 关系代数表达式的等价规则 273

6.3.4 关系代数表达式的优化算法 276

6.3.5 查询优化的一般步骤 277

6.4 关系DBMS产品及其选择 279

6.4.1 SQLServer 279

6.4.2 Oracle8i介绍 283

6.4.3 其他DBMS产品 286

6.4.4 关系DBMS产品的选择 287

6.5 小结 290

习题 290

第七章 事务管理 291

7.1 事务的基本概念 291

7.1.1 事务(Transaction) 291

7.1.3 事务的特性 292

7.1.2 事务的状态 292

7.1.4 更新事务的执行与恢复 294

7.2 数据库恢复概述 294

7.3 恢复的实现技术 296

7.3.1 数据转储 296

7.3.2 登记日志文件 298

7.4 故障恢复 300

7.4.1 故障的种类及恢复策略 300

7.4.2 具有检查点的恢复技术 302

7.4.3 数据库镜像 304

7.4.4 远程备份系统 305

7.5 SQL对事务管理的支持 307

7.6 事务的并发控制 309

7.6.1 并发控制的概念 309

7.6.2 封锁与封锁协议 311

7.6.3 活锁和死锁 313

7.6.4 并发调度的可串行性 315

7.6.5 基于时间戳的协议 318

7.6.6 基于有效性检查的协议 321

7.6.7 封锁的粒度 322

7.7 SQL Server的事务管理 324

7.7.1 事务管理方式 324

7.7.2 SQL Server并发控制技术 326

7.7.3 数据复制技术 327

7.8 小结 330

习题 331

第八章 数据库的安全性与完整性 332

8.1 概述 332

8.1.1 安全性与完整性的基本概念 333

8.1.2 数据库安全性标准 335

8.2 数据库安全性控制 340

8.2.1 用户标识和鉴别 340

8.2.2 存取控制 340

8.2.3 视图机制 346

8.2.4 数据密码 347

8.2.5 跟踪审计 347

8.2.6 统计数据库的安全性 347

8.3 数据库的完整性控制 349

8.3.1 数据库的完整性 349

8.3.2 完整性约束条件 351

8.3.3 SQL中的完整性约束 352

8.4 触发器 356

8.4.1 触发器机制 356

8.4.2 SQL触发器规则 357

8.4.3 SQL触发器设计 361

8.4.4 触发器的激活与撤销 363

8.4.5 SQL Sever触发器简介 364

8.4.6 主动数据库 368

8.5 小结 370

习题 370

第四篇 数据库中的高级论题 373

第九章 分布式与网络数据库系统 375

9.1 概述 375

9.1.1 什么是分布式数据库系统 375

9.2 分布式数据库系统的模式结构 377

9.2.1 模式结构 377

9.1.2 分布式数据库的划分 377

9.2.2 分布式数据库管理系统 378

9.2.3 分布式数据的存储 379

9.3 分布式的查询优化 384

9.3.1 查询的简化 384

9.3.2 半连接策略 387

9.3.3 利用并行性的连接策略 388

9.4 分布式的事务处理 388

9.4.1 事务处理的结构 388

9.4.2 系统故障模式 390

9.4.3 提交协议 390

9.5.1 加锁协议 395

9.5 分布式的并发控制 395

9.5.2 时间戳机制 397

9.5.3 死锁处理 398

9.6 网络数据库系统 401

9.6.1 基于C/S模式的数据库系统 401

9.6.2 基于B/S模式的数据库系统 404

9.6.3 数据库访问标准 407

9.6.4 ASP技术 408

9.7 小结 414

习题 415

10.1 概述 416

第十章 基于对象的数据库与XML 416

10.2 面向对象的数据模型 417

10.2.1 对象的结构 417

10.2.2 类 418

10.2.3 继承 418

10.2.4 多重继承 419

10.2.5 对象包含 420

10.2.6 对象的标识 420

10.2.7 对象的引用的完整性约束 421

10.3 面向对象的数据库语言 421

10.4.1 对象的持久性 422

10.4 持久化程序设计语言 422

10.4.2 对象标识符的持久性 423

10.4.3 持久对象的存储和访问 424

10.5 持久性C++系统 424

10.5.1 ODMG C++对象定义语言 425

10.5.2 对象查询语言OQL 425

10.6 对象-关系数据库系统 426

10.6.1 嵌套关系模型 426

10.6.2 复杂类型 426

10.6.3 继承 428

10.6.4 引用类型 429

10.6.5 查询数据 431

10.6.6 大对象 433

10.6.7 用户定义的函数和过程 433

10.7 面向对象数据库与对象-关系数据库的比较 435

10.8 XML 435

10.8.1 简介 435

10.8.2 XML的结构 437

10.8.3 XML文档的模式 440

10.8.4 XML模式 440

10.8.5 查询和转换XML的工具 441

10.9 小结 442

习题 443

第十一章 并行数据库系统 444

11.1 并行数据库系统概述 444

11.1.1 加速比和扩展比 445

11.1.2 互联网络 445

11.2 并行数据库系统的体系结构 447

11.2.1 共享主存 448

11.2.2 共享磁盘 448

11.2.3 无共享 449

11.3.1 数据的分布技术 450

11.3 并行数据库的数据分布 450

11.3.2 数据偏斜的处理 452

11.4 并行数据库的查询处理 453

11.4.1 查询间并行 453

11.4.2 查询内并行 454

11.4.3 操作间并行 454

11.4.4 操作内并行 456

11.4.5 查询优化 458

11.4.6 并行运算的代价 458

11.5 小结 458

习题 459

12.1 概述 460

第十二章 数据仓库与数据挖掘 460

12.2 数据仓库 462

12.2.1 数据仓库的定义 462

12.2.2 联机事务处理系统与数据仓库之间的比较 464

12.2.3 数据仓库的结构 465

12.2.4 数据仓库的模式 467

12.2.5 数据集市 467

12.3 联机分析处理 469

12.3.1 概念 469

12.3.2 多维数据的表示和操作 470

12.3.3 OLAP的分类 473

12.4 数据挖掘 474

12.4.1 什么是数据挖掘 474

12.4.2 数据挖掘应用 475

12.4.3 数据挖掘技术 475

12.4.4 预测 476

12.4.5 关联分析 478

12.4.6 聚类 479

12.5 小结 480

习题 480

第一章 例题 481

附录A 典型例题解析 481

第二章 例题 484

第三章 例题 487

第四章 例题 494

第五章 例题 498

第六章 例题 501

第七章 例题 503

第八章 例题 508

附录B 数据库上机实习任务及指导 511

B.1 实习任务与要求 511

B.2 SQL Server 2000环境与界面 512

B.3 建立与操作数据库 516

B.4 SQL Server的数据字典 518

B.5 数据库接口的使用 520

B.6 数据库安全及触发器机制的使用 524

附录C SQL Server的使用 526

C.1 SQL Server注册 526

C.2 SQL Server的数据类型 530

C.3 创建数据库和表 537

C.4 存储过程 545

C.5 备份和恢复数据库 548

C.6 SQL Server的安全性机制 552

参考文献 558