《数据库实用教程 第2版》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:丁宝康,董健全编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2003
  • ISBN:7302072442
  • 页数:405 页
图书介绍:本书详细介绍了数据库基本原理、方法和应用技术。本书内容丰富、概念阐述细致清楚,且具有丰富的例题和习题。

第1章 数据库发展史 1

1.1 数据管理技术的发展 1

第1部分 基础篇 1

1.1.1 人工管理阶段 2

1.1.2 文件系统阶段 2

1.1.3 文件系统的缺陷 3

1.1.4 倒排文件系统阶段 3

1.2 数据库技术的产生和发展 4

1.2.1 数据库技术的产生 4

1.2.2 数据库阶段的数据管理特点 5

1.2.3 数据库技术的术语 7

1.2.4 数据库技术的发展 8

习题1 9

小结 9

第2章 数据库系统结构 11

2.1 数据描述 11

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

2.1.2 逻辑设计中的数据描述 11

2.1.3 存储介质层次及数据描述 12

2.1.4 数据联系的描述 13

2.2 数据模型 15

2.2.1 数据模型的定义 15

2.2.2 实体联系模型 16

2.2.3 层次模型 17

2.2.4 网状模型 19

2.2.5 关系模型 20

2.2.6 面向对象模型 21

2.3 数据库的体系结构 22

2.3.1 三级模式结构 22

2.3.2 三级结构和两级映象 24

2.3.3 两级数据独立性 25

2.3.4 用户及用户界面 25

2.4 数据库管理系统 26

2.4.1 DBMS(数据库管理系统)的工作模式 26

2.4.2 DBMS的主要功能 27

2.4.3 DBMS的模块组成 28

2.5 数据库系统 28

2.5.1 DBS的组成 28

2.5.2 DBS的全局结构 30

2.5.3 DBS结构的分类 32

2.5.4 DBS的效益 34

小结 34

习题2 35

第2部分 运算篇 36

第3章 关系运算 36

3.1 关系数据模型 36

3.1.1 关系数据模型的定义 36

3.1.2 关键码和表之间的联系 38

3.1.3 关系模式、关系子模式和存储模式 38

3.1.4 关系模型的完整性规则 41

3.1.5 关系模型的形式定义 42

3.2.2 关系代数的五个基本操作 43

3.2 关系代数 43

3.2.1 关系查询语言和关系运算 43

3.2.3 关系代数的组合操作 46

3.2.4 关系代数表达式及其应用实例 49

3.2.5 扩充的关系代数操作 51

3.3 关系演算 52

3.3.1 元组关系演算 52

3.3.2 域关系演算 55

3.3.3 关系运算的安全性和等价性 57

3.4 查询优化 58

3.4.1 关系代数表达式的优化问题 58

3.4.2 关系代数表达式的等价变换规则 59

3.4.3 优化的一般策略 61

3.4.4 优化算法 62

小结 65

习题3 66

第4章 结构化查询语言SQL 68

4.1 SQL概述 68

4.1.1 SQL的发展历程 68

4.1.2 SQL数据库的体系结构 68

4.1.3 SQL的组成 69

4.2 SQL的数据定义 70

4.2.1 SQL模式的创建和撤消 70

4.2.2 SQL提供的基本数据类型 71

4.2.3 基本表的创建、修改和撤消 71

4.2.5 索引的创建和撤消 74

4.2.4 视图的创建和撤消 74

4.3 SQL的数据查询 75

4.3.1 SELECT语句格式 76

4.3.2 单表查询 77

4.3.3 多表查询 80

4.3.4 聚合函数 84

4.3.5 数据分组 85

4.3.6 集合操作 86

4.4 SQL的数据更新 89

4.4.1 数据插入 89

4.4.2 数据删除 90

4.4.3 数据修改 90

4.4.4 对视图的更新操作 91

4.5 嵌入式SQL 93

4.5.1 SQL语言的运行环境 93

4.5.2 嵌入式SQL的使用规定 94

4.5.3 嵌入式SQL的使用技术 95

4.5.4 动态SQL语句 98

小结 99

习题4 99

第3部分 设计篇 102

第5章 规范化设计 102

5.1 关系模式的设计问题 102

5.1.1 关系模型的外延和内涵 102

5.1.2 泛关系模式与数据库模式 102

5.1.3 关系模式的冗余和异常问题 103

5.1.4 本章的符号规定 104

5.2 函数依赖 104

5.2.1 函数依赖的定义 105

5.2.2 FD的逻辑蕴涵 105

5.2.3 FD的推理规则 106

5.2.4 FD和关键码的联系 107

5.2.5 属性集的闭包 107

5.2.6 FD集的最小依赖集 108

5.3 关系模式的分解特性 108

5.3.1 模式分解问题 108

5.3.2 无损分解 109

5.3.3 无损分解的测试方法 111

5.3.4 保持函数依赖的分解 112

5.3.5 模式分解与模式等价问题 113

5.4 关系模式的范式 114

5.4.1 第一范式(1NF) 114

5.4.2 第二范式(2NF) 114

5.4.3 第三范式(3NF) 115

5.4.4 BCNF(Boyce—Codd NF) 116

5.4.5 分解成BCNF模式集的方法 117

5.4.6 分解成3NF模式集的方法 117

5.4.7 模式设计方法的原则 117

*5.5 模式的进一步规范化 118

5.5.1 多值依赖的定义 118

5.5.2 关于FD和MVD的推理规则集 119

5.5.4 联接依赖 120

5.5.3 第四范式(4NF) 120

5.5.5 第五范式(5NF) 121

小结 122

习题5 122

第6章 实体联系模型 125

6.1 ER模型的基本元素 125

6.2 属性的分类 126

6.2.1 基本属性和复合属性 126

6.2.2 单值属性和多值属性 127

6.2.3 导出属性 128

6.3.2 联系的连通词 129

6.3.1 联系的元数 129

6.3 联系的设计 129

6.2.4 空值 129

6.3.3 联系的基数 131

6.4 ER模型的扩充 132

6.4.1 依赖联系与弱实体 133

6.4.2 子类和超类 134

6.5 ER模型实例分析 134

小结 138

习题6 138

第7章 数据库设计 140

7.1 数据库设计概述 140

7.1.1 软件生存期 140

7.1.2 数据库系统生存期 141

7.1.3 数据库设计的具体步骤 142

7.2 规划 143

7.3 需求分析 144

7.3.1 需求描述与分析 144

7.3.2 需求分析阶段的输入和输出 145

7.3.3 需求分析的步骤 145

7.4 概念设计 149

7.4.1 概念设计的必要性 149

7.4.2 概念模型 150

7.4.3 概念设计的主要步骤 151

7.4.4 数据抽象 151

7.4.5 ER模型的操作 153

7.4.6 采用ER方法的数据库概念设计 155

7.5 逻辑设计 161

7.5.1 逻辑设计环境 161

7.5.2 逻辑设计的步骤 162

7.5.3 ER模型向关系模型的转换 163

7.5.4 关系数据库的逻辑设计 166

7.6 物理设计 169

7.7 数据库的实现 170

7.8 数据库的运行与维护 170

小结 170

习题7 171

8.1 文件组织 172

8.1.1 定长记录 172

第8章 存储技术 172

第4部分 管理篇 172

8.1.2 变长记录 174

8.2 文件结构 177

8.2.1 四种文件结构 177

8.2.2 顺序文件 177

8.2.3 聚集文件 178

8.3 索引技术 179

8.3.1 索引机制 179

8.3.2 有序索引的分类 180

8.3.3 主索引 180

8.3.4 辅助索引 183

8.3.5 B?树索引文件 184

8.3.6 B树索引文件 189

8.4 散列技术 191

8.4.1 散列机制 191

8.4.2 散列索引 193

8.4.3 静态散列中的问题 194

8.4.4 可扩充散列结构 194

8.5 多键访问 199

8.5.1 单键查询的问题 199

8.5.2 网格文件 200

8.5.3 分区散列技术 201

小结 202

习题8 202

9.1.2 事务的ACID性质 205

9.1.1 事务的定义 205

9.1 事务的概念 205

第9章 数据库的管理 205

9.2 数据库的恢复 207

9.2.1 恢复的定义、原则和方法 207

9.2.2 故障类型和恢复方法 208

9.2.3 检查点机制 209

9.2.4 运行记录优先原则 210

9.2.5 SQL对事务的支持 210

9.3 数据库的并发控制 210

9.3.1 并发操作带来的三个问题 210

9.3.2 封锁机制 213

9.3.3 活锁、饿死和死锁 215

9.3.4 并发调度的可串行化 216

9.3.5 SQL中事务的存取模式和隔离级别 217

9.4 数据库的完整性 218

9.4.1 完整性子系统和完整性规则 218

9.4.2 SQL中的完整性约束 219

9.4.3 SQL3中的触发器 223

9.5 数据库的安全性 224

9.5.1 安全性级别 224

9.5.2 权限 225

9.5.3 SQL中的安全性机制 225

9.5.4 数据加密 227

9.5.5 自然环境的安全性 227

小结 228

习题9 228

10.1 “分布计算”概念 230

第5部分 网络篇 230

第10章 客户机/服务器系统 230

10.2 客户机/服务器计算模式 232

10.2.1 C/S结构的工作模式 232

10.2.2 C/S环境下应用成分的分布 232

10.2.3 C/S主要技术特征 233

10.3 C/S系统的体系结构 234

10.3.1 C/S模式的体系结构 234

10.3.2 C/S结构的演变 235

10.3.3 网络服务器的类型 237

10.4 C/S系统的管理问题 238

10.4.1 C/S系统的并行处理与并发控制 238

10.4.3 两类DBMS的出现 239

10.4.2 C/S系统的完整性 239

小结 240

习题10 240

第11章 分布式数据库系统 241

11.1 DDBS概述 241

11.1.1 集中式系统与分布式系统 241

11.1.2 DDBS的定义 242

11.1.3 DDBS的特点 243

11.1.4 DDBS的优缺点 244

11.1.5 DDBS的分类 245

11.2 分布式数据存储 246

11.2.1 数据分片 246

11.2.2 数据分配 247

11.3 DDB的模式结构 248

11.3.1 六层模式结构 249

11.3.2 六层结构的特征 250

11.3.3 分布透明性 250

11.4 DDBMS的功能及组成 252

11.4.1 DDBS的组成 252

11.4.2 DDBMS的功能 253

11.4.3 DDBMS的组成 253

11.5 分布式查询处理 254

11.5.1 查询代价的估算方法 254

11.5.2 基于半联接的优化策略 255

11.5.3 基于联接的优化策略 256

小结 257

习题11 258

第12章 ODBC技术 259

12.1 中间件 259

12.1.1 中间件的定义 259

12.1.2 中间件的作用 259

12.2 ODBC概念和作用 260

12.3 ODBC的结构 261

12.3.1 ODBC的体系结构 261

12.3.2 应用程序 262

12.3.3 驱动程序管理器 262

12.3.4 DBMS驱动程序 262

12.4.1 ODBC应用程序的基本流程 265

12.4 ODBC接口 265

12.3.5 ODBC的数据源管理 265

12.4.2 ODBC句柄 266

12.4.3 ODBC连接 268

12.4.4 SQL语句的执行 268

12.4.5 光标函数的使用 270

12.5 ODBC的符合性级别 271

12.5.1 API符合性的三个级别 271

12.5.2 SQL符合性的三个级别 272

12.6 ODBC API与SQL CLI 273

12.7 典型的数据库应用系统开发工具 273

12.7.1 PowerBuilder 274

12.7.3 VisualBasic 275

12.7.2 Delphi 275

12.7.4 Developer/2000 276

小结 277

习题12 277

第6部分 发展篇 279

第13章 对象关系数据库 279

13.1 对象联系图 279

13.1.1 从关系到嵌套关系、复合对象 279

13.1.2 引用类型 281

13.1.3 对象联系图的成分 281

13.1.4 数据的泛化/细化 283

13.2 面向对象的类型系统 283

13.3.2 数据类型的定义 285

13.3 ORDB的定义语言 285

13.3.1 ORDB的定义 285

13.3.3 继承性的定义 286

13.3.4 引用类型的定义 288

13.3.5 SQL3中的定义语言 289

13.4 ORDB的查询语言 290

13.4.1 SELECT语句的使用规定 290

13.4.2 嵌套与解除嵌套 292

13.4.3 函数的定义与使用 292

13.4.4 复合值的创建和查询 293

小结 294

习题13 294

14.1.1 ODMG组织和标准 296

第14章 面向对象数据库 296

14.1 面向对象数据库系统概述 296

14.1.2 OODBS的概念 297

14.1.3 OODBS存在的问题和局限性 297

14.2 面向对象数据模型的基本概念 298

14.2.1 对象 298

14.2.2 类 298

14.2.3 继承性 299

14.2.4 对象标识 300

14.2.5 对象包含 301

14.3 ODMG 93和持久化C+系统 301

14.3.1 持久化程序设计语言 301

14.3.2 ODMG c+对象定义语言 303

14.4 ODMG 97和对象语言 305

14.3.3 ODMG c+对象操纵语言 305

14.4.1 ODMG数据模型 306

14.4.2 ODMG ODL 306

14.4.3 ODMG OQL 307

14.5 OODB与ORDB的比较 312

*14.6 使用UML类图来概念对象建模 313

14.6.1 统一建模语言(UML)概述 313

14.6.2 用类图表达类和关联 313

14.6.3 用类图表达关联类 316

14.6.4 用类图表达泛化/细化 316

14.6.5 用类图表达聚合 318

习题14 319

小结 319

第7部分 应用篇 321

第15章 PowerBuilder 8.0数据库应用开发简介 321

15.1 PowerBuilder 8.0集成开发环境 321

15.1.1 工作空间、目标和库文件 321

15.1.2 PowerBuilder 8.0主窗口 322

15.1.3 系统树、剪贴和输出窗口 322

15.1.4 工具栏 323

15.1.5 画板(Painter) 325

15.2 “学生选课系统”的开发过程 326

15.2.1 规划 326

15.2.2 创建数据库 330

15.2.3 创建表和数据操作 332

15.2.4 建立工作空间 336

15.2.5 建立目标和应用对象 337

15.2.6 建立数据窗口 338

15.2.7 建立窗口 349

15.2.8 编写事件驱动程序 352

15.2.9 运行应用程序 356

15.2.10 创建另外两个窗口 356

15.2.11 添加菜单 359

15.3 PowerScript编程语言简介 364

15.3.1 基本语法规则 364

15.3.3 变量及其作用域 365

15.3.2 运算符和数据类型 365

15.3.4 实例变量(Instance)的访问权限 366

15.3.5 常量 366

15.3.6 数组 366

15.3.7 函数 367

15.3.8 代词 368

15.3.9 语句 368

第16章 SQL Server 7.0简介 371

16.1 SQL Server概述 371

16.1.1 SQL Server的发展 371

16.1.2 SQL Server 7.0的特点 372

16.1.3 安装SQL Server 7.0的软硬件需求 372

16.1.5 SQL Server 7.0环境介绍 373

16.1.4 SQL Server 7.0的安装 373

16.1.6 SQL Server 7.0的工具介绍 375

16.2 数据库的创建、修改与删除 378

16.2.1 创建SQL Server数据库 378

16.2.2 修改数据库 381

16.2.3 删除数据库 381

16.3 表以及主键的建立 381

16.3.1 表的建立 381

16.3.2 创建主键 382

16.3.3 用SQL语句命令方式建表 383

16.4 数据的增加、修改、删除和查询 384

16.4.1 数据的增加 384

16.4.4 数据的查询 386

16.4.2 数据的修改 386

16.4.3 数据的删除 386

16.5 数据库的备份和恢复 387

16.5.1 数据库的备份 387

16.5.2 数据库的恢复 389

16.6 高级应用技术 390

16.6.1 存储过程 390

16.6.2 触发器 394

16.7 PB 8.0连接SQL数据库的实例 398

16.7.1 创建数据源 399

16.7.2 定义数据库描述文件 402

16.7.3 连接数据库 404

参考文献 405