《数据库设计与开发教程》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)PAULRAJPONNIAH著;韩宏志译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2005
  • ISBN:7302093059
  • 页数:550 页
图书介绍:本书系统阐述数据库系统设计和开发的基本原理。主要内容有基本数据库概念、数据库开发周期、基于对象建模、实体关系数据建模、关系数据模型、设计和实现、数据库管理和维护、数据库系统和web。

第1章 数据库方法 3

1.1 学习目标 3

第Ⅰ部分 数据库基本概念 3

1.2 数据系统的演化过程 4

1.2.1 技术发展 5

1.2.2 信息需求 6

1.2.3 发展历程 7

1.3.1 驱动力 8

1.3 数据库系统 8

1.2.4 面向文件的数据系统 8

1.3.2 早期数据系统的不足 9

1.3.3 数据库系统满足要求 12

1.4.2 数据驱动 14

1.4.1 数据库的定义 14

1.4 数据库方法 14

1.4.3 基本概念 15

1.4.4 数据库的使用 16

1.5.1 层次结构模型 17

1.5 数据模型简介 17

1.5.2 网状结构模型 18

1.5.3 关系模型 19

1.5.4 对象-关系模型 20

1.6.1 集中式数据库 21

1.6 数据库类型 21

1.7 数据库产业概述 22

1.6.2 分布式数据库 22

1.7.1 简史 23

1.7.3 未来展望 24

1.7.2 主要商业数据库 24

1.9 复习题 25

1.8 本章小结 25

1.10 练习题 26

2.1 学习目标 27

第2章 主要组件概览 27

2.2 数据库环境的组件 28

2.2.1 总体系结构 29

2.2.3 支持软件 30

2.2.2 硬件基础结构 30

2.3 数据库和数据库管理系统(DBMS) 31

2.2.4 人员和过程 31

2.3.2 使用DBMS的原因 32

2.3.1 数据库和DBMS的区别 32

2.3.4 语言和接口 34

2.3.3 DBMS分类 34

2.4.1 硬件 36

2.4 功能和特性 36

2.4.3 操作系统软件 37

2.4.2 数据存储 37

2.4.5 用户 38

2.4.4 数据库软件 38

2.4.7 方法和过程 39

2.4.6 专业人员 39

2.4.8 数据库的用法 40

2.5.1 数据库引擎 41

2.5 DBMS详解 41

2.5.3 查询处理器 43

2.5.2 数据词典 43

2.5.4 窗体生成器 44

2.5.5 报表编写器 45

2.5.6 应用程序开发者 46

2.5.8 实用程序 47

2.5.7 通信接口 47

2.8 练习题 48

2.7 复习题 48

2.6 本章小结 48

3.1 学习目标 53

第3章 数据库环境的重要性 53

第Ⅱ部分 数据库开发过程 53

3.2.2 主要流程 54

3.2.1 核心业务 54

3.2 组织机构 54

3.2.3 信息是主要资产 55

3.2.4 机构中的数据库系统 56

3.3 信息需求 57

3.3.1 根据用户级别分组 58

3.3.3 按地理位置分组 59

3.3.2 按职能部门分组 59

3.4 信息共享 60

3.3.4 提供信息 60

3.4.1 共享信息的原因 61

3.4.2 主要益处 62

3.4.3 信息共享方案 63

3.4.4 数据库系统作为支持者 64

3.5.1 数据存储 65

3.5 数据库系统的枢纽角色 65

3.5.3 应用程序的基础 66

3.5.2 信息传送 66

3.6 本章小结 67

3.5.4 现代企业必不可少的工具 67

3.8 练习题 68

3.7 复习题 68

4.2 主要开发步骤 69

4.1 学习目标 69

第4章 数据库开发周期 69

4.2.1 开始过程 70

4.2.2 设计和开发 71

4.2.3 开发和实现 72

4.2.5 角色和责任 73

4.2.4 步骤和任务 73

4.2.6 管理和控制 75

4.3 数据库系统规划 76

4.3.2 规划者 77

4.3.1 总体规划范围 77

4.3.3 业务规划的影响 78

4.3.5 关键规划问题 79

4.3.4 数据库规划 79

4.4.1 目标和范围 80

4.4 可行性研究 80

4.4.2 技术基础结构 81

4.4.3 技能分析 82

4.4.4 成本评估 83

4.4.5 收益评估 84

4.4.6 权衡选项 85

4.5 需求定义 86

4.5.2 用户采访 87

4.5.1 需求收集方法 87

4.5.4 分析应用程序 91

4.5.3 流程观察 91

4.5.6 合并信息需求 92

4.5.5 研究文档 92

4.6 设计阶段 93

4.5.7 需求定义文档 93

4.6.2 逻辑设计与物理设计 94

4.6.1 设计目标 94

4.6.3 外部模式 95

4.6.5 内部模式 96

4.6.4 概念模式 96

4.7 实现和部署 97

4.7.4 填充数据库 98

4.7.3 创建数据词典 98

4.7.1 从概念模式到内部模式 98

4.7.2 DBMS的安装 98

4.8.1 管理工具 99

4.8 维护和成长 99

4.7.5 开发应用程序接口 99

4.8.3 性能调整 100

4.8.2 持续监控 100

4.10 复习题 101

4.9 本章小结 101

4.8.4 管理成长 101

4.11 练习题 102

5.1 学习目标 105

第5章 数据建模基础 105

第Ⅲ部分 概念数据建模 105

5.2.1 建立数据模型的原因 106

5.2 数据模型的含义 106

5.2.3 数据模型是复制品 107

5.2.2 现实信息需求 107

5.2.4 数据模型组件 108

5.3 数据建模概念 109

5.3.2 过滤无关信息 110

5.3.1 信息需求的表示 110

5.3.4 数据模型到数据设计 111

5.3.3 组件映射 111

5.4 数据建模式样 112

5.4.2 基于对象的建模技术 113

5.4.1 高级别数据模型 113

5.5 数据视图 114

5.4.4 数据建模辅助工具 114

5.4.3 实体.关系建模技术 114

5.5.2 信息需求的集合 115

5.5.1 数据视图的含义 115

5.5.3 透过窗户看数据系统 116

5.6 视图集成 117

5.5.4 数据视图:两种理解 117

5.6.1 合并个体用户视图 118

5.6.3 增强和验证 119

5.6.2 集成局部数据模型 119

5.6.4 统一数据模型 120

5.9 练习题 121

5.8 复习题 121

5.7 本章小结 121

6.2 基于对象的建模技术简介 123

6.1 学习目标 123

第6章 基于对象建模的原理和组件 123

6.2.2 基于对象的数据模型的益处 124

6.2.1 通用数据模型 124

6.2.3 组件简介 125

6.2.4 现实信息映射 126

6.2.5 模型图示例 128

6.3.1 对象组和实例 130

6.3 业务对象 130

6.3.3 识别对象组 131

6.3.2 对象类型 131

6.3.4 属性 132

6.3.5 实例标识符 133

6.4.1 关系的角色 134

6.4 对象之间的关系 134

6.4.2 关系中的基数 136

6.4.3 聚合对象 139

6.5 归纳和专化 141

6.4.4 关系的度 141

6.5.1 超组和子组 142

6.5.3 属性继承 143

6.5.2 归纳层次 143

6.5.4 关系继承 144

6.5.5 特例 145

6.6.1 概念和物理对象 147

6.6 特殊对象类型和关系 147

6.6.2 递归关系 148

6.7.2 完整数据模型图 149

6.7.1 组件总览 149

6.6.3 装配结构 149

6.7 回顾基于对象的数据模型 149

6.9 复习题 150

6.8 本章小结 150

6.10 练习题 151

7.1 学习目标 153

第7章 实体-关系数据模型 153

7.2.2 数据建模过程 154

7.2.1 基本概念 154

7.2 E-R模型简介 154

7.2.3 主要组件 155

7.3.1 实体定义 156

7.3 实体 156

7.3.3 实体组 157

7.3.2 实体类型 157

7.3.4 弱实体类型 158

7.4.1 属性规范 159

7.4 属性 159

7.4.3 属性类型 160

7.4.2 值和域 160

7.5 关系 163

7.4.4 候选键和主键 163

7.5.2 关系的度 164

7.5.1 实体之间的关联 164

7.5.4 可选和强制条件 165

7.5.3 关系的基数 165

7.6.1 建模依赖于时间的组件 168

7.6 特例 168

7.6.2 标识和非标识关系 169

7.6.4 使用动名词 170

7.6.3 关系类型的属性 170

7.7.1 重述组件及符号 171

7.7 实体-关系图 171

7.6.5 归纳和专化 171

7.7.2 示例ERD 172

7.8 本章小结 173

7.7.3 分析示例ERD 173

7.10 练习题 174

7.9 复习题 174

8.1 学习目标 177

第8章 关系数据模型基础 177

第Ⅳ部分 关系数据模型 177

8.2.2 关系表:一个建模概念 178

8.2.1 关系模型的优点 178

8.2 结构和组件 178

8.2.3 列表示属性 179

8.2.5 主键 180

8.2.4 行表示实例 180

8.2.6 通过外键建立关系 181

8.2.7 关系模型的符号 182

8.3.2 基本关系属性 183

8.3.1 确保数据完整性的原因 183

8.3 数据完整性约束 183

8.3.3 实体完整性 184

8.3.5 函数依赖 185

8.3.4 引用完整性 185

8.4.1 数据语言的角色 186

8.4 数据操纵 186

8.4.3 关系代数 187

8.4.2 数据操纵语言 187

8.4.4 关系演算 195

8.4.5 通用语言比较 196

8.5 关系模型设计 197

8.5.3 从语义模型到关系模型 198

8.5.2 设计方法 198

8.5.1 数据模型的要求 198

8.5.5 评估两种设计方法 199

8.5.4 传统方法 199

8.7 复习题 200

8.6 本章小结 200

8.8 练习题 201

9.1 学习目标 203

第9章 从语义数据模型到关系数据模型 203

9.2.1 优点 204

9.2 模型转换方法 204

9.2.3 步骤和任务 205

9.2.2 转换方法的适用范围 205

9.3 组件映射 206

9.2.4 关键问题 206

9.3.2 对象组到关系表的映射 207

9.3.1 映射和转换 207

9.3.3 属性 208

9.4 关系转换 209

9.3.4 实例标识符 209

9.4.1 一对一关系 210

9.4.2 一对多关系 211

9.4.3 多对多关系 213

9.4.4 强制和可选条件 217

9.4.5 将聚合对象作为关系 220

9.4.7 超组和子组 221

9.4.6 标识关系 221

9.5.1 模型比较 222

9.5 模型转换的结果 222

9.6 本章小结 223

9.5.2 转换归纳 223

9.8 练习题 224

9.7 复习题 224

10.2 非正式设计 225

10.1 学习目标 225

第10章 数据规范化方法 225

10.2.2 非正式设计的缺陷 226

10.2.1 根据需求建立关系表 226

10.2.4 删除异常 228

10.2.3 更新异常 228

10.3.1 目标和优点 229

10.3 规范化方法 229

10.2.5 添加异常 229

10.3.3 步骤和任务 230

10.3.2 规范化方法的用法 230

10.4.1 第一范式 231

10.4 基本范式 231

10.4.2 第二范式 232

10.4.3 第三范式 234

10.4.4 Boyce-Codd范式 236

10.5.1 第四范式 237

10.5 高级范式 237

10.5.2 第五范式 238

10.6 规范化方法综述 240

10.5.3 域-键范式 240

10.6.1 步骤分析 241

10.6.3 规范化的示例 242

10.6.2 关键问题 242

10.9 练习题 244

10.8 复习题 244

10.7 本章小结 244

11.1 学习目标 249

第11章 完成逻辑设计 249

第Ⅴ部分 设计和实现 249

11.2.1 逻辑设计和物理设计 250

11.2 逻辑设计的重要性 250

11.2.3 逻辑设计阶段的必要性 251

11.2.2 DDLC中的逻辑设计阶段 251

11.2.5 确保设计的完整性 252

11.2.4 物理设计的输入 252

11.3 逻辑设计中的数据建模 253

11.3.2 表示实体 254

11.3.1 完成逻辑设计的步骤 254

11.3.3 表示属性 255

11.3.5 规则和约束 256

11.4 关系数据模型的设计 256

11.3.4 表示关系 256

11.4.2 逻辑设计组件 257

11.4.1 将关系表作为单个设计概念 257

11.4.4 特殊注意事项 258

11.4.3 逻辑模式 258

11.5.2 输出的用法 259

11.5.1 逻辑设计输出 259

11.5 逻辑设计的文档记录 259

11.5.4 文档记录纲要 260

11.5.3 使用CASE工具 260

11.8 练习题 261

11.7 复习题 261

11.6 本章小结 261

12.1 学习目标 263

第12章 物理设计过程 263

12.2.1 从逻辑设计到物理设计 264

12.2 物理设计简介 264

12.2.2 目标和设计决策 265

12.2.5 数据词典的用法 266

12.2.4 物理设计任务 266

12.2.3 物理设计组件 266

12.3 数据存储和访问 268

12.3.2 访问物理数据 269

12.3.1 存储管理 269

12.3.3 文件、块和记录 270

12.3.4 文件组织 272

12.3.5 链接相关数据元素 274

12.3.6 RAID技术基础 275

12.4 索引技术 278

12.4.1 主索引 279

12.4.2 折半查找 280

12.4.4 辅助索引 281

12.4.3 对称树索引 281

12.4.5 位图索引 282

12.5.1 聚集 284

12.5 其他性能考虑事项 284

12.5.3 拆分 285

12.5.2 反向规范化 285

12.5.4 内存缓冲管理 286

12.6 本章小结 287

12.5.5 预建联接 287

12.8 练习题 288

12.7 复习题 288

13.1 学习目标 291

第13章 特殊的实现注意事项 291

13.2.2 语言的角色 292

13.2.1 模型实现的含义 292

13.2 实现语言 292

13.2.3 用于关系模型的语言 294

13.3 SQL 296

13.3.2 发展简史 297

13.3.1 总体特性 297

13.3.3 SQL的数据定义 298

13.3.4 SQL的数据检索 300

13.3.5 SQL的数据维护 302

13.3.6 SQL中的数据控制 303

13.3.7 查询 305

13.3.8 SQL查询组件概览 308

13.3.9 从应用程序访问数据库 309

13.4 查询处理 310

13.4.2 查询优化器 311

13.4.1 查询处理步骤 311

13.4.3 诱导方法 312

13.4.4 基于成本的优化 314

13.5 数据库系统部署 315

13.5.2 在集中式体系结构中实现 316

13.5.1 部署任务 316

13.5.3 在客户机/服务器中实现 317

13.6 本章小结 318

13.8 练习题 319

13.7 复习题 319

14.1 学习目标 323

第14章 管理职能概述 323

第Ⅵ部分 数据库管理和维护 323

14.2.1 管理的必要性 324

14.2 管理的重要性 324

14.2.2 管理目标 326

14.2.3 数据管理 327

14.3 技能和责任 328

14.2.4 数据库管理 328

14.3.1 管理角色 329

14.3.2 责任范围 330

14.3.4 与用户和专业人员交互 331

14.3.3 技能、知识和经验 331

14.4 在开发周期各阶段的任务和责任 332

14.4.2 需求定义 333

14.4.1 规划和可行性研究 333

14.4.4 物理设计 334

14.4.3 逻辑设计 334

14.5.1 持续职能 335

14.5 完成部署后的任务 335

14.4.5 实现和部署 335

14.5.4 数据库系统的成长和变化 336

14.5.3 数据库系统的增强 336

14.5.2 维护服务级别 336

14.8 练习题 337

14.7 复习题 337

14.6 本章小结 337

15.1 学习目标 339

第15章 数据完整性 339

15.2.1 事务概念 340

15.2 事务处理 340

15.2.2 事务属性 341

15.2.3 事务状态 343

15.2.5 完整性考虑事项 344

15.2.4 事务处理 344

15.3 并发事务 347

15.3.2 并发问题 348

15.3.1 并发处理事务的原因 348

15.3.3 事务和调度 349

15.3.4 可串行性 350

15.3.5 可恢复性 353

15.4.1 基于锁的解决方法 354

15.4 并发控制 354

15.4.2 基于锁的技术的应用 356

15.4.3 死锁的防止和检测 359

15.4.4 基于时间戳的解决方案 361

15.4.5 乐观技术 363

15.5.1 故障分类 364

15.5 数据库故障和恢复 364

15.5.2 恢复概念 365

15.5.3 日志记录 366

15.5.4 检查点 367

15.5.5 基于日志的恢复技术 368

15.5.6 阴影分页 371

15.5.7 恢复示例 372

15.7 复习题 373

15.6 本章小结 373

15.8 练习题 374

16.1 学习目标 375

第16章 数据库安全 375

16.2.1 目标和目的 376

16.2 安全问题 376

16.2.3 解决方案选项 377

16.2.2 安全问题 377

16.3 访问控制 379

16.2.5 Web安全 379

16.2.4 隐私问题 379

16.3.1 数据访问级别和类型 380

16.3.2 任意控制 381

16.3.4 SQL示例 383

16.3.3 使用视图 383

16.3.5 强制控制 384

16.4.1 授权 385

16.4 特殊的安全考虑事项 385

16.4.2 身份验证 387

16.4.4 统计数据库 388

16.4.3 DBA的角色 388

16.5 加密 389

16.5.1 加密的含义 390

16.5.2 加密方法 391

16.5.3 数据加密标准 392

16.5.4 公钥加密 393

16.6 本章小结 394

16.8 练习题 395

16.7 复习题 395

17.1 学习目标 397

第17章 持续维护和成长 397

17.2.1 备份和恢复 398

17.2 日常维护 398

17.2.2 安全维护 401

17.2.4 并发控制 402

17.2.3 空间管理 402

17.3.1 监控目的 403

17.3 监控和分析 403

17.2.5 问题解决方案 403

17.3.2 监控过程 404

17.3.4 分析操作 405

17.3.3 收集统计数据 405

17.4 成长和增强 406

17.3.5 基准的用法 406

17.4.2 应用程序增强 407

17.4.1 持续成长和增强 407

17.4.3 模式修正 408

17.4.4 DBMS版本升级 409

17.5.1 目标和解决方案选项 410

17.5 调整性能 410

17.5.2 调整索引 411

17.5.4 调整模式 412

17.5.3 调整查询和事务 412

17.6 本章小结 413

17.8 练习题 414

17.7 复习题 414

18.1 学习目标 417

第18章 分布式数据库系统 417

第Ⅶ部分 高级篇 417

18.2.1 分布式数据库的含义 418

18.2 基本原理 418

18.2.2 基本概念 419

18.2.4 优点和缺点 420

18.2.3 动机和目标 420

18.3.1 类型和配置 421

18.3 分布式数据库 421

18.3.2 DDBMS 423

18.3.3 网络组件 426

18.3.4 数据分布 427

18.3.5 体系结构选项 430

18.3.6 设计和实现问题 432

18.4.1 透明是重要理念 433

18.4 透明 433

18.4.3 复制透明 434

18.4.2 拆分透明 434

18.5 分布式处理 435

18.4.7 故障透明 435

18.4.4 位置透明 435

18.4.5 网络透明 435

18.4.6 命名透明 435

18.5.1 查询处理 436

18.5.2 事务处理 440

18.5.3 并发控制 442

18.5.4 分布恢复 445

18.6 本章小结 447

18.8 练习题 448

18.7 复习题 448

19.1 学习目标 449

第19章 数据库系统和Web 449

19.2.1 Internet和Web 450

19.2 Web技术回顾 450

19.2.2 HTTP 451

19.2.4 HTML 452

19.2.3 URL 452

19.2.5 超越HTML 454

19.2.6 内部网和外部网 455

19.3.1 集成动机 456

19.3  Web和数据库集成 456

19.3.3 集成的体系结构 457

19.3.2 集成的必要条件 457

19.3.4 优缺点 459

19.4.1 CGI 460

19.4 集成方法 460

19.4.2 API 462

19.4.3 SSI 463

19.4.5 使用Java应用程序 464

19.4.4 cookie 464

19.4.6 使用脚本语言 466

19.4.7 数据库工具 467

19.5.1 保护的意义 468

19.5 安全选项 468

19.5.2 防火墙、包装器和代理 469

19.5.4 SET和SST 471

19.5.3 数字签名和数字证书 471

19.5.6 Java安全 472

19.5.5 SSL和S-HTTP 472

19.6 本章小结 474

19.8 练习题 475

19.7 复习题 475

20.1 学习目标 477

第20章 数据库技术发展趋势 477

20.2.1 基本概念 478

20.2 面向对象的数据库 478

20.2.2 对象和类 479

20.2.3 方法和消息 481

20.2.4 继承 482

20.2.6 面向对象的数据模型 483

20.2.5 多态 483

20.3.1 驱动力 485

20.3 对象-关系数据库 485

20.3.3 ORDBMS的特性 486

20.3.2 ORDBMS的含义 486

20.4 支持决策的数据库 487

20.3.4 SQL-3的对象-关系支持 487

20.4.1 数据仓库 488

20.4.2 联机分析处理 496

20.4.3 数据挖掘 500

20.5.1 并行数据库 504

20.5 主要趋势概述 504

20.5.2 主动数据库 505

20.5.4 推论数据库 506

20.5.3 智能数据库 506

20.5.5 多媒体数据库 507

20.5.6 移动数据库 508

20.5.7 地理数据库 510

20.6 本章小结 511

20.7 复习题 512

20.8 练习题 512

第Ⅷ部分 附录 517

附录A 传统系统模型:层次和网状结构 517

附录B Codd的关系规则 521

附录C 图示和符号 523

附录D CASE工具的用法 529

附录E 主要商业数据库管理系统 533

附录F 数据库设计和开发概览 539

术语表 543