IBM公司的DB2通用数据库为企业提供领先的商业解决方案,Version 8.1是其最新版本。本书着重于概念的介绍,包括DB2的基础概念、数据库与表格空间、数据库中的对象、数据的搬运、备份与恢复、数据锁定、数据库系统效能、安全控管、基础SQL指令及高级SQL指令等。本书在理论讲解的同时,还辅以适当的范例帮助读者了解应用的方式。
本书适合DB2初学者使用,也可以为具有一定数据库管理或编程经验的数据库管理员或程序员提供参考。
第1章 认识DB2
1.1 什么是实例
1.2 DB2的存取界面
1.3 建立DB2客户机/服务器
1.4 DB2与系统环境参数
1.5 常用的DB2指令
1.6 常用的DB2系统指令
第2章 数据库与表格空间
2.1 什么是数据库
2.2 表格空间
第3章 数据库中的对象
3.1 对象名称与模式名称
3.2 表格
3.3 别名
3.4 限制
3.5 视图
3.6 实例化的查询表(MQT)
3.7 索引
3.8 触发器
3.9 序号对象
3.10 识别字段
3.11 数据加密
3.12 db2look指令
第4章 数据的传输
4.1 数据文件的格式
4.2 输出功能
4.3 输入功能
4.4 加载功能
4.5 输入/加载数据与数据库的恢复
4.6 输入/加载数据指令的额外选项
第5章 备份与恢复
5.1 数据库毁坏的原因
5.2 什么是事务?
5.3 DB2的恢复类型
5.4 数据库备份
5.5 DB2的缓冲与日志缓冲
5.6 事务日志文件
5.7 事务日志文件的结构
5.8 数据库回存
5.9 Rollforward database命令
5.10 事务日志文件的备份
5.11 联机备份
5.12 有关备份与恢复的数据库参数
5.13 Circular Logging与Linear Logging的比较
5.14 变动部分备份
5.15 救回删除掉的表格
5.16 Turning off Logging
5.17 回存到其他数据库
5.18 表格空间的备份与恢复
第6章 数据锁定
6.1 锁定在何时发生
6.2 Lock Table指令
6.3 DB2锁定的对象
6.4 锁定的模式
6.5 锁定的长度
6.6 锁定等待
6.7 锁定超时
6.8 锁定升级
6.9 SQL执行计划与锁定的关系
6.10 如何避免因Relation Scan造成的锁定等待
6.11 不同的Isolation Level造成
第7章 数据库系统效能
7.1 了解DB2的最优化处理器
7.2 DB2 Explain工具
7.3 系统表格中的统计信息
7.4 RUNSTATS指令
7.5 最优化处理等级
7.6 索引
7.7 缓冲池
7.8 数据预取
7.9 Extended Storage
7.10 数据重整(Reorganization)
7.11 MQT
7.12 Multi Dimensional Clustering
7.13 平行处理
第8章 安全管理
8.1 身份鉴别
8.2 权限控制
第9章 基础SQL指令
9.1 示例数据库
9.2 查询数据
9.3 更改数据
9.4 特殊记录器
第10章 高级SQL指令
10.1 CASE表达式
10.2 子查询
10.3 数据子查询
10.4 表格表达式
10.5 表格函数
10.6 Explicit Join
10.7 公用表格表达式
10.8 递归SQL
10.9 Recursion with computation
10.10 递归式查询
庄济诚,台湾交通大学计算机工程系学士、美国南加州大学计算机工程硕士。曾任美国IBM公司Santa Teresa Laboratory DB2产品研发工程师、美国Informix公司全球支持中心资深工程师,现任台湾IBM公司软件事业处资深工程师。译有《DB2——新世纪的对象关连式数据库》和《DB2 Universal Database完全指南》。
我在IBM软件事业处的工作,有很大一部分是教育训练,对象包括客户、经销商及IBM公司的同事。一开始所采用的是规定的教材,但是总觉得内容不是很符合学员的需要,前后逻辑顺序也有问题。于是从4、5年前我开始编辑自己用的教材,将平日所看到的用户需求及遇到的问题纳入教材中,同时也加入DB2新版本的每个功能,所以我每次授课的内容总有些不同。我常对上课的学员感到抱歉的是,我的教材的说明文字不够详尽,所以除了上课外,学员很难自行在课后研读教材。于是我兴起了编写本书的念头,希望以我教材中的大纲为基础,配合详细的说明与范例,以及比较合逻辑的顺序,让读者在阅读本书后,能对DB2有清楚的认识。
本书是以DB2 Universal Database Version 8.1为基础,内容着重于概念的讲述,希望让读者对DB2的许多功能与操作从原理层面开始了解,如DB2的结构与环境、磁盘空间的运用、备份与恢复、数据锁定、索引结构的运用、SQL指令的创建等,都有详尽的概念说明。在说明的同时,也配合适当的范例让读者了解应用的方式,而这些范例也都是以在DB2 V 8.1的环境执行为例。本书并没有将所有指令与语法详尽列出,读者若要了解DB2各项功能的完整指令语法,仍需要查阅DB2的正式参考手册。
我一直都觉得关系型数据库是一种很“人性化”的系统软件,不论是结构、原理成操作,都是那么直接与合理。当然现在DB2的功能已经非常复杂而强大,但是仍然可以从简单的层级循序渐进地进入DB2的殿堂。所以导入学习的阶段是很重要的,而是否有——本适当的参考书籍,对于学习者会有很大的影响。本书的目的就在于此,希望借助本书,让你享受学习DB2的乐趣,让你也和我一样,觉得DB2功能这么强大,又这么易懂易上手,让你禁不住爱上DB2。