书籍详情
Oracle达人修炼秘籍:Oracle 11g数据库管理与开发指南
作者:孙风栋,王澜 等著
出版社:机械工业出版社
出版时间:2013-02-01
ISBN:9787111411710
定价:¥119.00
购买这本书可以去
内容简介
《Oracle达人修炼秘籍:Oracle 11g数据库管理与开发指南》是Oracle数据库领域独特的、具有创新意义的实力之作。为了降低读者的学习难度,作者根据多年实践和教学的经验和体会,首先从宏观上帮助读者廓清Oracle数据库体系和框架,然后从微观上帮助读者掌握开发中的各个技术细节,这是本书的独到之处。本书内容系统而全面,详细讲解了Oracle数据库的管理、开发、性能优化,以及PL/SQL编程的相关知识,面面俱到;注重实战,为每个知识点精心设计了大量的案例,而且每一章后面都有实践指导,旨在帮助读者提高动手能力;重点突出,对重要的内容进行了深入细致的讲解。《Oracle达人修炼秘籍:Oracle 11g数据库管理与开发指南》全书共32章,分为五大部分:基础篇(第1~7章),主要介绍了Oracle数据库的作用、特点、应用结构、数据库服务器的安装与配置、三种常用管理与开发工具(OEM、SQL*Plus、SQL Developer)的使用,以及会贯穿全书的案例;体系结构篇(第8~14章),详细讲解了Oracle数据库的内部体系结构,包括数据库实例(内存结构与后台进程)、物理存储结构(数据文件、控制文件、重做日志文件、归档重做日志文件、初始化参数文件)、逻辑存储结构(块、区、段、表空间)的构成、配置与维护,这部分内容是Oracle数据库管理与维护的基础;模式对象篇(第15~19章),详细讲解了Oracle数据库模式对象的应用与管理,包括表、约束、索引、分区表、分区索引、视图、物化视图、簇、外部表、序列、同义词、数据库链接等,这是数据库开发和维护的基础;维护篇(第20~29章),详细介绍了Oracle数据库的创建与配置、启动与关闭方式、网络服务管理与配置、安全性配置与管理、备份与恢复,以及性能优化等;开发篇(第30~32章),介绍了与Oracle数据库开发相关的技术,包括SQL语句应用、PL/SQL程序设计,以及PL/SQL的综合应用等。
作者简介
孙风栋,资深Oracle数据库专家,从事Oracle数据库的开发、管理、教学和培训十余年,对Oracle数据库系统有深入的研究和认识,积累了丰富的实战经验。领导并参与了包括国家自然科学基金项目在内的多个Oracle项目,负责Oracle数据库的架构、开发和管理工作。此外,他还是一位经验丰富的技术作家,著有多部与Oracle数据库相关的著作,深受读者欢迎。
目录
前言
第一篇 基础篇
第1章 数据库基础知识/ 2
1.1 数据库基本概念/ 2
1.2 数据库的产生/ 3
1.3 数据库的特征/ 4
1.4 数据模型/ 5
1.4.1 数据模型的概念/ 5
1.4.2 概念模型/ 5
1.4.3 组织数据模型/ 6
1.5 关系模型/ 6
1.5.1 数据结构/ 7
1.5.2 关系完整性约束/ 8
1.6 关系数据库/ 8
1.6.1 关系数据库的功能/ 8
1.6.2 常见的关系数据库管理系统/ 8
1.7 数据库系统设计步骤/ 10
1.7.1 数据库设计概述/ 10
1.7.2 需求分析/ 10
1.7.3 概念结构设计/ 11
1.7.4 逻辑结构设计/ 12
1.7.5 物理结构设计/ 13
1.7.6 数据库实施与维护/ 13
实践指导/ 13
第2章 Oracle数据库简介/ 15
2.1 Oracle数据库的发展/ 15
2.1.1 Oracle数据库的应用现状/ 15
2.1.2 Oracle 数据库的版本变迁/ 15
2.1.3 Oracle数据库的技术领先优势/ 17
2.1.4 Oracle数据库的高市场占有率/ 18
2.2 Oracle的网格计算/ 18
2.2.1 Oracle 数据库的网格/ 19
2.2.2 Oracle应用服务器的网格/ 20
2.2.3 Oracle 企业管理器的网格控制/ 20
2.3 Oracle数据库的应用结构/ 21
2.4 Oracle 11g数据库的新特性/ 22
实践指导/ 25
第3章 Oracle 11g数据库的安装/ 26
3.1 安装预处理/ 26
3.1.1 对系统软、硬件的要求/ 26
3.1.2 安装准备/ 26
3.1.3 回环网络适配器的安装与配置/ 27
3.2 Oracle 11g数据库软件下载/ 29
3.3 安装Oracle 11g数据库服务器/ 31
3.4 检查和验证安装结果/ 40
3.4.1 程序组 / 41
3.4.2 产品清单/ 41
3.4.3 系统服务/ 41
3.4.4 文件体系结构/ 43
3.4.5 网络配置/ 43
3.4.6 利用企业管理器登录数据库/ 44
3.4.7 利用SQL Plus登录数据库/ 45
3.5 运行时故障分析与解决/ 45
3.6 卸载Oracle 11g产品/ 49
实践指导/ 50
第4章 Oracle企业管理器/ 51
4.1 Oracle企业管理器的功能与分类/ 51
4.1.1 Oracle企业管理器的功能/ 51
4.1.2 Oracle企业管理器的类型/ 51
4.2 Oracle企业管理器的启动与登录/ 52
4.3 使用联机帮助 / 53
4.4Oracle企业管理器功能界面介绍/ 54
4.4.1 “主目录”选项卡/ 54
4.4.2 “性能”选项卡/ 56
4.4.3 “可用性”选项卡/ 59
4.4.4 “服务器”选项卡/ 60
4.4.5 “方案”选项卡/ 61
4.4.6 “数据移动”选项卡/ 62
4.4.7 “软件和支持”选项卡/ 63
4.5 Oracle企业管理器基本设置/ 64
4.5.1 添加管理员/ 64
4.5.2 管理监视模板/ 65
4.5.3 设置封锁/ 67
4.6 Oracle企业管理器首选项设置/ 69
4.6.1 设置主机首选身份证明/ 70
4.6.2设置数据库首选身份证明/ 72
实践指导/ 73
第5章 SQL﹡Plus工具的使用/ 74
5.1 SQL﹡Plus工具介绍/ 74
5.1.1 SQL*Plus的主要功能/ 74
5.1.2 SQL*Plus启动与退出/ 74
5.1.3 SQL*Plus站点配置文件/ 76
5.2 SQL*Plus命令/ 76
5.2.1 数据库连接与断开命令/ 76
5.2.2 显示数据库对象结构/ 77
5.2.3 编辑命令/ 77
5.2.4 文件操作命令/ 79
5.2.5 注释/ 83
5.2.6 使用替换变量/ 84
5.2.7 与用户通信/ 86
5.2.8 使用绑定变量/ 87
5.2.9 其他常用命令/ 88
5.3 显示与设置环境变量/ 90
5.4 格式化查询结果/ 95
5.4.1 格式化列/ 95
5.4.2 压缩重复列值的显示/ 98
5.4.3 使用汇总/ 99
5.4.4 设置页与报表/ 100
实践指导/ 102
第6章 SQL Developer开发工具的使用/ 104
6.1 SQL Developer概述/ 104
6.2 创建数据库连接/ 104
6.3 SQL Developer基本操作/ 106
6.3.1 浏览数据库对象/ 106
6.3.2 数据操纵/ 107
6.3.3 数据库对象的创建与修改/ 110
6.4开发和调试PL/SQL程序/ 113
6.4.1 存储过程创建与编辑/ 113
6.4.2 存储过程调试/ 115
6.5 导出与导入操作/ 118
6.5.1 导出数据/ 119
6.5.2 导出对象定义/ 119
6.5.3 导入数据/ 120
6.6 运行和创建报表/ 122
6.6.1 运行预定义报表/ 122
6.6.2 创建自定义报表/ 123
实践指导/ 124
第7章 实践案例项目分析与设计/ 125
7.1 实践案例说明/ 125
7.2 系统分析/ 125
7.3 概念结构设计/ 125
7.4 逻辑结构设计/ 127
7.4.1 表结构设计/ 127
7.4.2 序列的设计/ 129
7.4.3 索引的设计/ 129
7.4.4 视图的设计/ 130
7.4.5 存储过程的设计/ 130
7.4.6 函数的设计 / 130
7.4.7 包的设计/ 130
7.4.8 触发器的设计/ 130
7.5 物理存储结构的设计/ 131
实践指导/ 131
第二篇 体系结构篇
第8章 Oracle数据库体系结构/ 134
8.1 Oracle数据库体系结构概述/ 134
8.2 Oracle数据库存储结构/ 135
8.2.1 Oracle数据库物理存储结构/ 136
8.2.2 Oracle数据库逻辑存储结构/ 140
8.3 Oracle数据库实例/ 147
8.3.1 Oracle实例概述/ 147
8.3.2 SGA/ 148
8.3.3 PGA/ 152
8.3.4 内存管理/ 154
8.4 Oracle数据库进程/ 158
8.4.1 Oracle进程概述/ 158
8.4.2 Oracle服务器进程/ 159
8.4.3 Oracle后台进程/ 168
8.5 数据字典/ 173
8.5.1 数据字典的概念/ 173
8.5.2 数据字典的结构/ 174
8.5.3 数据字典的使用/ 175
8.5.4 在OEM中查询数据字典信息/ 179
8.6 SQL语句执行过程/ 180
实践指导/ 181
第9章 数据文件管理/ 182
9.1 数据文件概述/ 182
9.2 数据文件的管理准则/ 183
9.2.1 确定数据文件数量/ 183
9.2.2 确定数据文件大小/ 184
9.2.3 设置数据文件的存储位置/ 184
9.3 创建数据文件/ 184
9.4 修改数据文件大小/ 186
9.4.1 数据文件的自动扩展/ 186
9.4.2 手动改变数据文件大小/ 187
9.5 改变数据文件的可用性/ 188
9.5.1 归档模式下数据文件可用性的改变/ 188
9.5.2 非归档模式下数据文件的脱机/ 189
9.5.3 改变表空间中所有数据文件的可用性/ 190
9.6 改变数据文件的名称与位置/ 191
9.6.1 修改同一个表空间中数据文件的名称与位置/ 192
9.6.2 修改多个表空间中数据文件的名称与位置/ 192
9.7 删除数据文件/ 194
9.8 查询数据文件/ 194
9.9 利用OEM管理数据文件/ 196
实践指导/ 198
第10章 控制文件管理/ 199
10.1 控制文件概述/ 199
10.1.1 控制文件的概念/ 199
10.1.2 控制文件的内容/ 199
10.1.3 控制文件的大小/ 200
10.1.4 控制文件的管理策略/ 200
10.2 创建控制文件/ 201
10.2.1 创建初始控制文件/ 201
10.2.2 创建新的控制文件/ 201
10.3 多路复用控制文件/ 206
10.4 控制文件创建后故障解决/ 207
10.4.1 数据字典与控制文件信息不一致/ 207
10.4.2 创建控制文件时的错误处理/ 208
10.5 备份控制文件/ 208
10.6 删除控制文件/ 208
10.7 查询控制文件信息/ 208
10.8 利用OEM管理控制文件/ 209
实践指导/ 210
第11章 重做日志文件管理/ 212
11.1 重做日志文件概述/ 212
11.1.1 重做日志文件的内容与作用/ 212
11.1.2 重做日志文件工作原理/ 213
11.1.3 重做日志文件切换与日志序列号/ 213
11.1.4 重做日志文件组的概念/ 214
11.1.5 重做日志文件故障响应/ 214
11.1.6 重做日志文件规划/ 215
11.2 创建重做日志文件组及其成员/ 216
11.2.1 创建重做日志文件组/ 216
11.2.2 创建重做日志文件组成员文件/ 217
11.3 修改重做日志文件的名称与位置/ 218
11.3.1 数据库关闭状态下修改重做日志文件的名称与位置/ 219
11.3.2 数据库运行状态下修改重做日志文件的名称与位置/ 220
11.4 删除重做日志文件组及其成员/ 221
11.4.1 删除重做日志文件组成员文件/ 221
11.4.2 删除重做日志文件组/ 223
11.5 重做日志文件切换与检查点/ 224
11.5.1 重做日志文件切换/ 224
11.5.2 检查点/ 225
11.6 清除重做日志文件组/ 226
11.7 查看重做日志文件信息/ 226
11.8 利用OEM管理重做日志文件/ 227
实践指导/ 229
第12章 归档重做日志文件管理/ 230
12.1 归档重做日志文件概述/ 230
12.2 数据库归档与非归档模式选择/ 230
12.2.1 非归档模式/ 231
12.2.2 归档模式/ 231
12.3 归档控制/ 232
12.3.1 设置数据库初始归档模式/ 232
12.3.2 改变数据库归档模式/ 232
12.3.3 手动归档/ 234
12.3.4 调整归档进程数量/ 234
12.4 设置归档目的地/ 234
12.4.1 设置初始化参数指定归档目的地/ 234
12.4.2 归档目的地的状态/ 238
12.4.3 设置备用归档目的地/ 239
12.5 查询归档重做日志文件信息/ 240
12.6 利用OEM管理归档日志文件/ 241
实践指导/ 242
第13章 初始化参数文件管理/ 243
13.1 服务器初始化参数文件概述/ 243
13.2 创建服务器初始化参数文件/ 244
13.3 初始化参数介绍/ 246
13.4 修改初始化参数/ 247
13.5 导出服务器初始化参数文件/ 251
13.6 恢复丢失或损坏的服务器初始化参数文件/ 252
13.7 查看初始化参数设置/ 253
13.8 利用OEM管理初始化参数/ 255
实践指导/ 256
第14章 表空间管理/ 257
14.1 表空间概述/ 257
14.1.1 表空间概念/ 257
14.1.2 表空间分类/ 258
14.1.3 表空间的管理方式/ 259
14.1.4 表空中区的分配与段的管理/ 260
14.1.5 表空间的管理策略/ 262
14.2 创建表空间/ 263
14.2.1 创建表空间概述/ 263
14.2.2 CREATE TABLESPACE语句/ 263
14.2.3 创建本地管理表空间/ 265
14.2.4 创建大文件表空间/ 267
14.2.5 创建非标准块表空间/ 269
14.2.6 创建加密表空间/ 270
14.3 维护表空间/ 272
14.3.1 ALTER TABLESPACE语句/ 272
14.3.2 改变表空间大小/ 273
14.3.3 改变表空间可用性/ 275
14.3.4 改变表空间读写性/ 277
14.3.5 重命名表空间/ 280
14.3.6 设置默认表空间/ 281
14.3.7 备份表空间/ 282
14.4 删除表空间/ 283
14.5 管理临时表空间/ 285
14.5.1 临时表空间概述/ 285
14.5.2 默认临时表空间/ 285
14.5.3 创建临时表空间/ 286
14.5.4 临时表空间组/ 286
14.5.5 收缩本地管理的临时表空间/ 287
14.6 管理撤销表空间/ 288
14.6.1 撤销表空间概述/ 288
14.6.2 创建撤销表空间/ 290
14.6.3 修改撤销表空间 / 291
14.6.4 删除撤销表空间/ 291
14.6.5 切换撤销表空间/ 292
14.6.6 回退信息保留时间设置/ 292
14.6.7 查询撤销表空间信息/ 293
14.7 查询表空间信息/ 294
14.8 利用OEM管理表空间/ 296
实践指导/ 299
第三篇 模式对象篇
第15章 表与约束管理/ 302
15.1 模式与模式对象/ 302
15.1.1 模式与对象的关系/ 302
15.1.2 模式与用户的关系/ 302
15.1.3 CREATE SCHEMA语句/ 304
15.1.4 创建人力资源管理系统模式/ 304
15.2 表管理概述 / 305
15.2.1 表概述/ 305
15.2.2 表创建策略/ 305
15.3 创建表/ 308
15.3.1 CREATE TABLE语句/ 308
15.3.2 表的存储分配方式设置/ 310
15.3.3 Oracle数据类型/ 311
15.3.4 创建标准表/ 313
15.3.5 创建临时表/ 314
15.3.6 利用子查询创建表/ 316
15.4 修改表/ 318
15.4.1 ALTER TABLE语句/ 318
15.4.2 添加、修改、删除列/ 319
15.4.3 修改表参数设置/ 321
15.4.4 表结构重组/ 322
15.4.5 手动分配与回收表的存储空间/ 322
15.4.6 改变表的读写模式/ 324
15.4.7 重命名表/ 326
15.5 维护表/ 326
15.5.1 为表和列添加注释/ 326
15.5.2 删减表/ 327
15.5.3 删除表/ 328
15.5.4 分析表/ 329
15.5.5 查询表信息/ 332
15.5.6 利用OEM管理表/ 333
15.6 约束概述/ 335
15.6.1 约束的分类/ 335
15.6.2 约束的定义方式/ 337
15.6.3 约束的状态/ 338
15.7 创建与维护约束/ 338
15.7.1 创建表时定义约束/ 338
15.7.2 添加、修改与删除约束/ 341
15.7.3 禁用与激活约束/ 344
15.7.4 验证约束状态/ 346
15.7.5 确定违反约束限制的记录/ 347
15.7.6 延迟约束检查/ 349
15.7.7 查询约束信息/ 350
实践指导/ 351
第16章 索引与索引表管理/ 352
16.1 索引概述/ 352
16.1.1 索引的概念与作用/ 352
16.1.2 索引结构/ 354
16.1.3 索引的分类/ 356
16.1.4 索引的管理策略/ 356
16.2 创建索引/ 358
16.2.1 CREATE INDEX语句/ 358
16.2.2 创建非唯一性索引/ 359
16.2.3 创建唯一性索引/ 360
16.2.4 创建位图索引/ 360
16.2.5 创建反序索引/ 360
16.2.6 创建函数索引/ 360
16.2.7 定义约束时创建索引/ 361
16.2.8 创建大型索引/ 361
16.3 修改索引/ 362
16.3.1 ALTER INDEX语句/ 362
16.3.2 修改索引参数设置/ 363
16.3.3 合并与重建索引/ 363
16.3.4 禁用与启用函数索引/ 364
16.3.5 手动分配与回收索引存储空间/ 365
16.3.6 重命名索引/ 365
16.3.7 打开与关闭索引监控/ 365
16.4 维护索引/ 366
16.4.1 删除索引/ 366
16.4.2 查询索引信息/ 367
16.4.3 利用OEM管理索引/ 368
16.5 索引表概述/ 369
16.5.1 索引表的概念/ 369
16.5.2 索引表与标准表比较/ 369
16.5.3 索引表的优、缺点/ 370
16.5.4 索引表的溢出存储/ 370
16.6 创建索引表/ 371
16.7 维护索引表/ 372
16.7.1 修改索引表/ 372
16.7.2 重建索引表/ 373
16.7.3 将索引表转换为标准表/ 373
16.7.4 利用OEM管理索引表/ 373
实践指导/ 374
第17章 分区表与分区索引管理/ 376
17.1 分区概述/ 376
17.1.1 分区的概念/ 376
17.1.2 分区的优点/ 376
17.1.3 何时需要分区/ 377
17.1.4 基本分区方法/ 377
17.1.5 Oracle 11g分区方法扩展/ 379
17.1.6 分区索引/ 381
17.2 创建分区表/ 382
17.2.1 创建范围分区表/ 382
17.2.2 创建列表分区表/ 385
17.2.3 创建散列分区表/ 386
17.2.4 创建复合分区表/ 387
17.2.5 创建间隔分区表/ 389
17.2.6 创建引用分区表/ 391
17.2.7 创建基于虚拟列的分区表/ 392
17.2.8 创建系统分区表/ 392
17.2.9 创建分区索引表/ 393
17.3 维护分区表/ 394
17.4 创建分区索引/ 402
17.4.1 本地分区索引/ 402
17.4.2 全局分区索引/ 403
17.5 维护分区索引/ 404
17.6 查询分区表和分区索引信息/ 404
17.7 利用OEM管理分区表和分区索引/ 406
实践指导/ 408
第18章 视图与实体化视图管理/ 409
18.1 视图的概念/ 409
18.2 创建视图/ 410
18.2.1 CREATE VIEW语句/ 410
18.2.2 创建简单视图/ 411
18.2.3 创建复杂视图/ 411
18.2.4 创建带约束的视图/ 413
18.2.5 创建内嵌视图/ 413
18.2.6 创建TOP-N视图/ 414
18.3 维护视图/ 414
18.3.1 视图的DML操作/ 414
18.3.2 修改视图定义/ 415
18.3.3 删除视图/ 416
18.3.4 查询视图信息/ 416
18.3.5 利用OEM管理视图/ 417
18.4 实体化视图概述/ 418
18.4.1 实体化视图的概念/ 418
18.4.2 实体化视图的特性/ 419
18.4.3 实体化视图的刷新方法/ 419
18.4.4 实体化视图的刷新模式/ 420
18.4.5 实体化视图日志/ 420
18.4.6 实体化视图类型/ 421
18.4.7 实体化视图的查询重写/ 421
18.4.8 实体化视图的创建方式/ 422
18.5 创建实体化视图/ 422
18.5.1 创建实体化视图的权限需求/ 422
18.5.2 CREATE MATERIALIZED VIEW语句/ 422
18.5.3 创建实体化视图示例/ 423
18.6 维护实体化视图/ 427
18.6.1 修改实体化视图/ 427
18.6.2 删除实体化视图/ 428
18.6.3 查询实体化视图信息/ 428
18.6.4 利用OEM管理实体化视图/ 429
实践指导/ 432
第19章 簇、外部表、序列、同义词与数据库链接管理/ 433
19.1 簇/ 433
19.1.1 簇概念/ 433
19.1.2 簇管理准则/ 434
19.1.3 创建簇/ 434
19.1.4 创建聚簇表/ 435
19.1.5 创建聚簇索引/ 435
19.1.6 修改簇/ 436
19.1.7 删除簇/ 436
19.1.8 查询簇信息/ 436
19.2 外部表/ 437
19.2.1 外部表概述/ 437
19.2.2 创建外部表/ 437
19.2.3 利用外部表导出数据/ 440
19.2.4 修改外部表/ 441
19.2.5 删除外部表/ 441
19.2.6 查询外部表信息/ 442
19.3 序列/ 442
19.3.1 序列的概念/ 442
19.3.2 创建序列/ 442
19.3.3 使用序列/ 443
19.3.4 修改序列/ 445
19.3.5 删除序列/ 445
19.3.6 查询序列信息/ 445
19.3.7 利用OEM管理序列/ 445
19.4 同义词/ 446
19.4.1 同义词的概念/ 446
19.4.2 创建同义词/ 447
19.4.3 在DML语句中使用同义词/ 447
19.4.4 删除同义词/ 447
19.4.5 查询同义词信息/ 447
19.4.6 利用OEM管理同义词/ 448
19.5 数据库链接/ 449
19.5.1 数据库链接概述/ 449
19.5.2 创建数据库链接/ 450
19.5.3 在DML中使用数据库链接/ 451
19.5.4 修改数据库链接/ 451
19.5.5 删除数据库链接/ 451
19.5.6 查询数据库链接信息/ 452
19.5.7 利用OEM管理数据库链接/ 452
实践指导/ 453
第四篇 维护篇
第20章 数据库创建与配置/ 456
20.1 创建数据库概述/ 456
20.1.1 创建数据库的方法/ 456
20.1.2 创建数据库前的规划/ 457
20.1.3 创建数据库的先决条件/ 457
20.2 使用DBCA创建数据库/ 458
20.3 设置DBA认证方式/ 462
20.3.1 DBA职责/ 462
20.3.2 DBA权限/ 463
20.3.3 DBA认证方式/ 464
20.3.4 使用操作系统认证/ 465
20.3.5 使用口令文件认证/ 466
20.3.6 共享与禁用口令文件/ 467
20.3.7 修改口令文件/ 468
20.4 手动创建数据库/ 468
20.4.1 手动创建数据库的步骤/ 468
20.4.2 CREATE DATABASE语句/ 469
20.4.3 手动创建数据库实例/ 471
实践指导/ 477
第21章 数据库启动与关闭/ 478
21.1 数据库启动与关闭概述/ 478
21.1.1 Oracle数据库启动过程/ 478
21.1.2 Oracle数据库关闭过程/ 479
21.1.3 数据库启动与关闭的工具/ 479
21.2 启动Oracle数据库/ 479
21.2.1 启动数据库前的准备/ 479
21.2.2 Oracle数据库启动模式/ 481
21.3 改变数据库的状态/ 484
21.3.1 改变数据库的启动模式/ 484
21.3.2 数据库读写状态转换/ 484
21.3.3 数据库受限与非受限状态转换/ 485
21.4 关闭Oracle数据库/ 486
21.4.1 正常关闭数据库/ 486
21.4.2 事务关闭数据库/ 486
21.4.3 立即关闭数据库/ 487
21.4.4 终止关闭数据库/ 487
21.4.5 数据库关闭超时/ 487
21.5 Oracle数据库的静默与挂起/ 488
21.5.1 静默数据库/ 488
21.5.2 挂起数据库/ 490
21.6 利用OEM启动与关闭数据库/ 491
21.6.1 关闭数据库/ 491
21.6.2 启动数据库/ 492
实践指导/ 493
第22章 网络服务管理与配置/ 495
22.1 Oracle网络服务概述/ 495
22.1.1 网络解决方案/ 495
22.1.2 网络服务组件/ 498
22.1.3 网络连接基本概念/ 500
22.1.4 完整的Oracle网络服务结构/ 503
22.1.5 本地管理的网络配置文件/ 504
22.2 服务器端网络配置/ 504
22.2.1 监听器配置概述/ 504
22.2.2 安装Oracle时配置默认监听器/ 505
22.2.3 配置监听协议地址/ 506
22.2.4 配置静态服务注册/ 507
22.2.5 配置运行参数/ 508
22.2.6 创建与配置新的监听器/ 510
22.2.7 配置动态服务注册/ 512
22.2.8 监听器的管理/ 514
22.3 客户端网络配置/ 516
22.3.1 客户端网络配置概述/ 516
22.3.2 配置本地命名方式/ 516
22.3.3 配置主机命名方式/ 520
22.3.4 配置轻松连接命名方式/ 522
22.4 利用OEM进行网络管理与配置/ 522
22.4.1 配置与管理监听器/ 522
22.4.2 配置与管理本地网络服务名/ 524
实践指导/ 524
第23章 Oracle数据库安全管理/ 525
23.1 Oracle数据库安全控制策略/ 525
23.2 用户管理/ 526
23.2.1 预定义用户/ 526
23.2.2 用户属性/ 527
23.2.3 创建用户/ 528
23.2.4 用户身份认证/ 530
23.2.5 修改用户/ 531
23.2.6 删除用户/ 533
23.2.7 查询用户信息/ 534
23.3 资源限制与口令管理/ 534
23.3.1 资源限制与口令管理概述/ 534
23.3.2 资源限制参数介绍/ 536
23.3.3 口令管理参数介绍/ 537
23.3.4 创建概要文件/ 537
23.3.5 将概要文件分配给用户 / 538
23.3.6 修改概要文件/ 539
23.3.7 删除概要文件/ 539
23.3.8 查询概要文件信息/ 540
23.4 权限管理/ 541
23.4.1 权限概述/ 541
23.4.2 系统权限分类/ 541
23.4.3 系统权限的授权/ 546
23.4.4 系统权限的回收/ 547
23.4.5 对象权限分类 / 549
23.4.6 对象权限的授权 / 551
23.4.7 对象权限的回收 / 552
23.4.8 查询权限信息/ 554
23.5 角色管理/ 556
23.5.1 角色概述/ 556
23.5.2 预定义角色/ 557
23.5.3 创建角色/ 558
23.5.4 角色权限的授予与回收/ 559
23.5.5 修改角色/ 560
23.5.6 禁用与激活角色/ 561
23.5.7 删除角色/ 562
23.5.8 利用角色进行权限管理/ 562
23.5.9 查询角色信息/ 564
23.6 审计/ 565
23.6.1 审计的概念/ 565
23.6.2 审计分类/ 566
23.6.3 审计环境设置/ 566
23.6.4 语句审计/ 567
23.6.5 权限审计/ 570
23.6.6 对象审计/ 571
23.6.7 网络审计/ 572
23.6.8 精细审计/ 572
23.7 利用OEM进行安全管理/ 574
实践指导/ 577
第24章 用户管理的备份与恢复/ 579
24.1 Oracle数据库备份与恢复概述/ 579
24.1.1 备份与恢复的作用/ 579
24.1.2 数据库故障类型与恢复措施/ 580
24.1.3 备份与恢复的解决方案/ 581
24.2 Oracle数据库备份分类/ 582
24.2.1 物理备份与逻辑备份/ 582
24.2.2 一致性备份与不一致性备份/ 583
24.2.3 完全备份与部分备份/ 584
24.2.4 联机备份与脱机备份/ 585
24.2.5 增量备份/ 586
24.3 Oracle数据库备份原则与策略/ 586
24.4 用户管理的脱机备份/ 587
24.4.1 脱机备份概述/ 587
24.4.2 脱机完全备份/ 588
24.4.3 脱机备份表空间与数据文件/ 589
24.5 用户管理的联机备份/ 590
24.5.1 联机备份概述/ 590
24.5.2 联机备份表空间与数据文件/ 591
24.5.3 备份控制文件/ 592
24.5.4 备份归档重做日志文件/ 593
24.5.5 数据库挂起状态备份/ 594
24.5.6 联机完全备份数据库/ 595
24.6 Oracle数据库恢复的工作机制/ 595
24.6.1 数据库恢复原理/ 595
24.6.2 数据库恢复操作基本步骤/ 596
24.6.3 数据库恢复分类/ 596
24.7 数据库恢复的原则与策略/ 597
24.8 数据库实例恢复过程/ 598
24.9 非归档模式下的介质恢复/ 598
24.10 归档模式下的完全介质恢复/ 600
24.10.1 完全恢复概述/ 600
24.10.2 数据库关闭状态下的完全恢复/ 601
24.10.3 数据库打开状态下的完全恢复/ 602
24.11 归档模式下的不完全介质恢复/ 603
24.11.1 不完全恢复概述/ 603
24.11.2 归档模式下不完全恢复步骤/ 604
24.12 控制文件的恢复/ 605
24.12.1 丢失多路复用控制文件的一个成员/ 606
24.12.2 丢失所有当前的控制文件/ 606
24.12.3 重建控制文件/ 608
实践指导/ 609
第25章 基于RMAN的备份与恢复/ 611
25.1 RMAN概述/ 611
25.1.1 RMAN介绍/ 611
25.1.2 RMAN运行环境组件/ 612
25.1.3 RMAN基本概念/ 614
25.1.4 RMAN预定义配置参数/ 616
25.2 RMAN基本操作/ 617
25.2.1 连接数据库/ 617
25.2.2 创建恢复目录/ 618
25.2.3 注册数据库/ 618
25.2.4 启动与关闭数据库/ 619
25.2.5 执行SQL语句/ 619
25.2.6 SHOW命令/ 620
25.2.7 CONFIGURE命令/ 620
25.2.8 LIST命令/ 620
25.2.9 REPORT命令/ 621
25.2.10 用RMAN执行操作系统命令/ 621
25.3 RMAN备份的基本概念/ 621
25.3.1 RMAN备份对象/ 621
25.3.2 RMAN备份形式/ 622
25.3.3 RMAN备份类型/ 623
25.3.4 增量备份的工作机制/ 624
25.3.5 复合备份集/ 625
25.3.6 多副本备份/ 626
25.3.7 并行备份/ 627
25.4 通道分配/ 628
25.4.1 自动分配通道/ 628
25.4.2 手动分配通道/ 629
25.5 利用RMAN备份数据库/ 630
25.5.1 BACKUP命令/ 630
25.5.2 备份文件存储格式/ 632
25.5.3 备份整个数据库/ 633
25.5.4 备份表空间/ 635
25.5.5 备份数据文件/ 636
25.5.6 备份控制文件/ 636
25.5.7 备份服务器初始化参数文件/ 637
25.5.8 备份归档重做日志文件/ 638
25.5.9 非归档模式下的备份/ 639
25.5.10 多副本备份/ 640
25.5.11 增量备份/ 641
25.5.12 镜像复制/ 642
25.6 利用RMAN恢复数据库/ 644
25.6.1 RMAN恢复的基本概念/ 644
25.6.2 RESTOER与RECOVER命令/ 645
25.6.3 利用RMAN进行完全恢复/ 647
25.6.4 利用RMAN进行不完全恢复/ 649
25.6.5 控制文件的恢复/ 650
25.6.6 将数据文件恢复到新的位置/ 652
实践指导/ 654
第26章 Oracle数据库逻辑备份与恢复/ 656
26.1 逻辑备份与恢复概述/ 656
26.1.1 逻辑备份与恢复简介/ 656
26.1.2 数据泵技术介绍/ 657
26.2 创建目录对象/ 657
26.3 使用EXPDP导出数据/ 658
26.3.1 EXPDP调用模式与导出模式/ 658
26.3.2 EXPDP命令参数与交互式命令/ 659
26.3.3 EXPDP导出实例/ 664
26.4 使用IMPDP导入数据/ 665
26.4.1 IMPDP调用接口与导入模式/ 665
26.4.2 IMPDP命令参数与交互式命令/ 666
26.4.3 IMPDP导入实例/ 671
26.5 使用EXP/IMP导出与导入数据/ 673
26.5.1 EXP/IMP概述/ 673
26.5.2 利用EXP导出数据/ 674
26.5.3 利用IMP导入数据/ 676
实践指导/ 678
第27章 Oracle数据库闪回技术/ 679
27.1 闪回技术概述/ 679
27.1.1 闪回技术介绍/ 679
27.1.2 闪回特性分类/ 679
27.2 闪回查询/ 680
27.2.1 闪回查询概述/ 680
27.2.2 撤销表空间相关参数配置/ 681
27.2.3 闪回查询操作/ 681
27.3 闪回版本查询/ 684
27.3.1 闪回版本查询概述/ 684
27.3.2 闪回版本查询操作/ 685
27.4 闪回事务查询/ 687
27.4.1 闪回事务查询概述/ 687
27.4.2 闪回事务查询操作/ 688
27.5 闪回表/ 690
27.5.1 闪回表概述/ 690
27.5.2 闪回表操作/ 691
27.6 闪回删除/ 692
27.6.1 闪回删除概述/ 692
27.6.2 回收站的管理/ 693
27.6.3 闪回删除操作/ 695
27.7 闪回数据库/ 695
27.7.1 闪回数据库概述/ 695
27.7.2 快速恢复区的配置/ 696
27.7.3 闪回数据库的配置/ 698
27.7.4 闪回数据库操作/ 699
27.8 闪回数据归档/ 700
27.8.1 闪回数据归档概念/ 700
27.8.2 闪回数据归档区的管理/ 701
27.8.3 启用或禁用表的闪回数据归档/ 703
27.8.4 闪回数据归档操作示例/ 703
实践指导/ 705
第28章 使用OEM备份与恢复数据库/ 706
28.1 利用OEM备份与恢复数据库概述/ 706
28.2 物理备份数据库/ 706
28.2.1 配置备份设置/ 706
28.2.2 备份数据库/ 708
28.2.3 管理数据库备份/ 709
28.3 物理恢复数据库/ 710
28.3.1 配置恢复设置/ 710
28.3.2 恢复数据库/ 712
28.4 逻辑备份与恢复数据库/ 713
28.4.1 创建目录对象/ 713
28.4.2 数据导出/ 714
28.4.3 数据导入/ 715
实践指导/ 717
第29章 Oracle数据库性能优化/ 718
29.1 数据库性能优化概述/ 718
29.1.1 数据库性能优化的必要性/ 718
29.1.2 影响数据库系统性能的因素/ 718
29.1.3 数据库性能优化的步骤/ 719
29.2 数据库实例性能优化/ 719
29.2.1 内存结构优化概述/ 720
29.2.2 数据缓冲区调整/ 721
29.2.3 共享池调整/ 724
29.2.4 重做日志缓冲区调整/ 727
29.2.5 PGA调整/ 727
29.2.6 数据库碎片整理/ 728
29.2.7 磁盘I/O优化与调整/ 729
29.3 SQL语句优化 / 729
29.3.1 SQL语句优化概述/ 729
29.3.2 SQL语句执行过程/ 732
29.3.3 将常用程序驻留内存/ 732
29.3.4 有效使用索引/ 734
29.3.5 采用适当的多表连接技术/ 735
29.3.6 SQL语句使用技巧/ 736
29.4 其他方面性能优化/ 736
29.4.1 网络优化/ 736
29.4.2 应用程序优化 / 737
实践指导/ 738
第五篇 开发篇
第30章 SQL语言应用基础/ 740
30.1 SQL语言概述/ 740
30.1.1 SQL语言介绍/ 740
30.1.2 SQL语言的分类/ 740
30.1.3 SQL语言的特点/ 741
30.2 数据查询/ 741
30.2.1 数据查询的基本语法/ 741
30.2.2 简单查询/ 742
30.2.3 分组统计查询/ 747
30.2.4 累计统计查询 / 753
30.2.5 连接查询 / 754
30.2.6子查询/ 759
30.2.7 层次查询/ 762
30.2.8 集合操作/ 764
30.3 数据操纵/ 766
30.3.1 插入数据/ 766
30.3.2 修改数据/ 771
30.3.3 MERGE语句/ 772
30.3.4 删除数据/ 774
30.4 事务控制/ 774
30.4.1 事务概述/ 774
30.4.2 Oracle事务处理/ 775
30.5 SQL函数/ 777
30.5.1 SQL函数分类/ 777
30.5.2 数值函数/ 777
30.5.3 字符函数/ 779
30.5.4 日期函数/ 781
30.5.5 转换函数/ 783
30.5.6 其他函数/ 786
实践指导/ 788
第31章 PL/SQL程序设计基础/ 790
31.1 PL/SQL概述/ 790
31.1.1 PL/SQL特点/ 790
31.1.2 PL/SQL功能特性/ 791
31.1.3 PL/SQL执行过程与开发工具/ 791
31.2 PL/SQL基础/ 792
31.2.1 PL/SQL程序结构/ 792
31.2.2 词法单元/ 794
31.2.3 数据类型/ 796
31.2.4 变量与常量/ 799
31.2.5 PL/SQL记录 / 800
31.2.6 编译指示/ 803
31.2.7 PL/SQL中的SQL语句/ 803
31.3 控制结构/ 806
31.3.1 选择结构/ 806
31.3.2 循环结构/ 809
31.3.3 跳转结构/ 811
31.4 游标/ 811
31.4.1 游标的概念及类型/ 811
31.4.2 显式游标/ 812
31.4.3 隐式游标/ 819
31.4.4 游标变量/ 820
31.5 异常处理/ 823
31.5.1 异常概述/ 823
31.5.2 异常处理过程/ 825
31.5.3 异常的传播/ 829
31.6 存储过程/ 830
31.6.1 概述/ 830
31.6.2 存储过程的创建/ 830
31.6.3 存储过程的调用/ 834
31.6.4 存储过程的管理/ 835
31.7 函数/ 835
31.7.1 函数的创建/ 835
31.7.2 函数的调用/ 837
31.7.3 函数的管理/ 837
31.8 包/ 838
31.8.1 包的创建/ 838
31.8.2 包的调用/ 840
31.8.3 包重载/ 840
31.8.4 包的初始化/ 841
31.8.5 包的持续性/ 842
31.8.6 包的串行化/ 845
31.8.7 包的管理/ 845
31.9 触发器/ 846
31.9.1 触发器概述/ 846
31.9.2 DML触发器/ 847
31.9.3 INSTEAD OF触发器/ 850
31.9.4 系统触发器/ 851
31.9.5 变异表触发器/ 854
31.9.6 触发器的管理/ 856
实践指导/ 857
第32章 PL/SQL高级程序设计/ 859
32.1 集合/ 859
32.1.1 索引表/ 859
32.1.2 嵌套表/ 863
32.1.3 可变数组/ 866
32.1.4 集合类型在数据库中的应用/ 868
32.2 批绑定/ 870
32.2.1 批绑定概述/ 870
32.2.2 批DML操作/ 871
32.2.3 批查询/ 875
32.2.4 批绑定属性/ 876
32.3 动态SQL/ 877
32.3.1 动态SQL概述/ 877
32.3.2 动态非查询语句及单行查询语句/ 878
32.3.3 动态多行查询语句/ 882
32.3.4 动态批绑定/ 884
32.4 利用PL/SQL实现分页查询/ 886
32.4.1 利用集合实现分页查询/ 887
32.4.2 利用游标变量实现分页查询/ 889
32.4.3 分页查询在Java开发中的应用/ 891
实践指导/ 892
第一篇 基础篇
第1章 数据库基础知识/ 2
1.1 数据库基本概念/ 2
1.2 数据库的产生/ 3
1.3 数据库的特征/ 4
1.4 数据模型/ 5
1.4.1 数据模型的概念/ 5
1.4.2 概念模型/ 5
1.4.3 组织数据模型/ 6
1.5 关系模型/ 6
1.5.1 数据结构/ 7
1.5.2 关系完整性约束/ 8
1.6 关系数据库/ 8
1.6.1 关系数据库的功能/ 8
1.6.2 常见的关系数据库管理系统/ 8
1.7 数据库系统设计步骤/ 10
1.7.1 数据库设计概述/ 10
1.7.2 需求分析/ 10
1.7.3 概念结构设计/ 11
1.7.4 逻辑结构设计/ 12
1.7.5 物理结构设计/ 13
1.7.6 数据库实施与维护/ 13
实践指导/ 13
第2章 Oracle数据库简介/ 15
2.1 Oracle数据库的发展/ 15
2.1.1 Oracle数据库的应用现状/ 15
2.1.2 Oracle 数据库的版本变迁/ 15
2.1.3 Oracle数据库的技术领先优势/ 17
2.1.4 Oracle数据库的高市场占有率/ 18
2.2 Oracle的网格计算/ 18
2.2.1 Oracle 数据库的网格/ 19
2.2.2 Oracle应用服务器的网格/ 20
2.2.3 Oracle 企业管理器的网格控制/ 20
2.3 Oracle数据库的应用结构/ 21
2.4 Oracle 11g数据库的新特性/ 22
实践指导/ 25
第3章 Oracle 11g数据库的安装/ 26
3.1 安装预处理/ 26
3.1.1 对系统软、硬件的要求/ 26
3.1.2 安装准备/ 26
3.1.3 回环网络适配器的安装与配置/ 27
3.2 Oracle 11g数据库软件下载/ 29
3.3 安装Oracle 11g数据库服务器/ 31
3.4 检查和验证安装结果/ 40
3.4.1 程序组 / 41
3.4.2 产品清单/ 41
3.4.3 系统服务/ 41
3.4.4 文件体系结构/ 43
3.4.5 网络配置/ 43
3.4.6 利用企业管理器登录数据库/ 44
3.4.7 利用SQL Plus登录数据库/ 45
3.5 运行时故障分析与解决/ 45
3.6 卸载Oracle 11g产品/ 49
实践指导/ 50
第4章 Oracle企业管理器/ 51
4.1 Oracle企业管理器的功能与分类/ 51
4.1.1 Oracle企业管理器的功能/ 51
4.1.2 Oracle企业管理器的类型/ 51
4.2 Oracle企业管理器的启动与登录/ 52
4.3 使用联机帮助 / 53
4.4Oracle企业管理器功能界面介绍/ 54
4.4.1 “主目录”选项卡/ 54
4.4.2 “性能”选项卡/ 56
4.4.3 “可用性”选项卡/ 59
4.4.4 “服务器”选项卡/ 60
4.4.5 “方案”选项卡/ 61
4.4.6 “数据移动”选项卡/ 62
4.4.7 “软件和支持”选项卡/ 63
4.5 Oracle企业管理器基本设置/ 64
4.5.1 添加管理员/ 64
4.5.2 管理监视模板/ 65
4.5.3 设置封锁/ 67
4.6 Oracle企业管理器首选项设置/ 69
4.6.1 设置主机首选身份证明/ 70
4.6.2设置数据库首选身份证明/ 72
实践指导/ 73
第5章 SQL﹡Plus工具的使用/ 74
5.1 SQL﹡Plus工具介绍/ 74
5.1.1 SQL*Plus的主要功能/ 74
5.1.2 SQL*Plus启动与退出/ 74
5.1.3 SQL*Plus站点配置文件/ 76
5.2 SQL*Plus命令/ 76
5.2.1 数据库连接与断开命令/ 76
5.2.2 显示数据库对象结构/ 77
5.2.3 编辑命令/ 77
5.2.4 文件操作命令/ 79
5.2.5 注释/ 83
5.2.6 使用替换变量/ 84
5.2.7 与用户通信/ 86
5.2.8 使用绑定变量/ 87
5.2.9 其他常用命令/ 88
5.3 显示与设置环境变量/ 90
5.4 格式化查询结果/ 95
5.4.1 格式化列/ 95
5.4.2 压缩重复列值的显示/ 98
5.4.3 使用汇总/ 99
5.4.4 设置页与报表/ 100
实践指导/ 102
第6章 SQL Developer开发工具的使用/ 104
6.1 SQL Developer概述/ 104
6.2 创建数据库连接/ 104
6.3 SQL Developer基本操作/ 106
6.3.1 浏览数据库对象/ 106
6.3.2 数据操纵/ 107
6.3.3 数据库对象的创建与修改/ 110
6.4开发和调试PL/SQL程序/ 113
6.4.1 存储过程创建与编辑/ 113
6.4.2 存储过程调试/ 115
6.5 导出与导入操作/ 118
6.5.1 导出数据/ 119
6.5.2 导出对象定义/ 119
6.5.3 导入数据/ 120
6.6 运行和创建报表/ 122
6.6.1 运行预定义报表/ 122
6.6.2 创建自定义报表/ 123
实践指导/ 124
第7章 实践案例项目分析与设计/ 125
7.1 实践案例说明/ 125
7.2 系统分析/ 125
7.3 概念结构设计/ 125
7.4 逻辑结构设计/ 127
7.4.1 表结构设计/ 127
7.4.2 序列的设计/ 129
7.4.3 索引的设计/ 129
7.4.4 视图的设计/ 130
7.4.5 存储过程的设计/ 130
7.4.6 函数的设计 / 130
7.4.7 包的设计/ 130
7.4.8 触发器的设计/ 130
7.5 物理存储结构的设计/ 131
实践指导/ 131
第二篇 体系结构篇
第8章 Oracle数据库体系结构/ 134
8.1 Oracle数据库体系结构概述/ 134
8.2 Oracle数据库存储结构/ 135
8.2.1 Oracle数据库物理存储结构/ 136
8.2.2 Oracle数据库逻辑存储结构/ 140
8.3 Oracle数据库实例/ 147
8.3.1 Oracle实例概述/ 147
8.3.2 SGA/ 148
8.3.3 PGA/ 152
8.3.4 内存管理/ 154
8.4 Oracle数据库进程/ 158
8.4.1 Oracle进程概述/ 158
8.4.2 Oracle服务器进程/ 159
8.4.3 Oracle后台进程/ 168
8.5 数据字典/ 173
8.5.1 数据字典的概念/ 173
8.5.2 数据字典的结构/ 174
8.5.3 数据字典的使用/ 175
8.5.4 在OEM中查询数据字典信息/ 179
8.6 SQL语句执行过程/ 180
实践指导/ 181
第9章 数据文件管理/ 182
9.1 数据文件概述/ 182
9.2 数据文件的管理准则/ 183
9.2.1 确定数据文件数量/ 183
9.2.2 确定数据文件大小/ 184
9.2.3 设置数据文件的存储位置/ 184
9.3 创建数据文件/ 184
9.4 修改数据文件大小/ 186
9.4.1 数据文件的自动扩展/ 186
9.4.2 手动改变数据文件大小/ 187
9.5 改变数据文件的可用性/ 188
9.5.1 归档模式下数据文件可用性的改变/ 188
9.5.2 非归档模式下数据文件的脱机/ 189
9.5.3 改变表空间中所有数据文件的可用性/ 190
9.6 改变数据文件的名称与位置/ 191
9.6.1 修改同一个表空间中数据文件的名称与位置/ 192
9.6.2 修改多个表空间中数据文件的名称与位置/ 192
9.7 删除数据文件/ 194
9.8 查询数据文件/ 194
9.9 利用OEM管理数据文件/ 196
实践指导/ 198
第10章 控制文件管理/ 199
10.1 控制文件概述/ 199
10.1.1 控制文件的概念/ 199
10.1.2 控制文件的内容/ 199
10.1.3 控制文件的大小/ 200
10.1.4 控制文件的管理策略/ 200
10.2 创建控制文件/ 201
10.2.1 创建初始控制文件/ 201
10.2.2 创建新的控制文件/ 201
10.3 多路复用控制文件/ 206
10.4 控制文件创建后故障解决/ 207
10.4.1 数据字典与控制文件信息不一致/ 207
10.4.2 创建控制文件时的错误处理/ 208
10.5 备份控制文件/ 208
10.6 删除控制文件/ 208
10.7 查询控制文件信息/ 208
10.8 利用OEM管理控制文件/ 209
实践指导/ 210
第11章 重做日志文件管理/ 212
11.1 重做日志文件概述/ 212
11.1.1 重做日志文件的内容与作用/ 212
11.1.2 重做日志文件工作原理/ 213
11.1.3 重做日志文件切换与日志序列号/ 213
11.1.4 重做日志文件组的概念/ 214
11.1.5 重做日志文件故障响应/ 214
11.1.6 重做日志文件规划/ 215
11.2 创建重做日志文件组及其成员/ 216
11.2.1 创建重做日志文件组/ 216
11.2.2 创建重做日志文件组成员文件/ 217
11.3 修改重做日志文件的名称与位置/ 218
11.3.1 数据库关闭状态下修改重做日志文件的名称与位置/ 219
11.3.2 数据库运行状态下修改重做日志文件的名称与位置/ 220
11.4 删除重做日志文件组及其成员/ 221
11.4.1 删除重做日志文件组成员文件/ 221
11.4.2 删除重做日志文件组/ 223
11.5 重做日志文件切换与检查点/ 224
11.5.1 重做日志文件切换/ 224
11.5.2 检查点/ 225
11.6 清除重做日志文件组/ 226
11.7 查看重做日志文件信息/ 226
11.8 利用OEM管理重做日志文件/ 227
实践指导/ 229
第12章 归档重做日志文件管理/ 230
12.1 归档重做日志文件概述/ 230
12.2 数据库归档与非归档模式选择/ 230
12.2.1 非归档模式/ 231
12.2.2 归档模式/ 231
12.3 归档控制/ 232
12.3.1 设置数据库初始归档模式/ 232
12.3.2 改变数据库归档模式/ 232
12.3.3 手动归档/ 234
12.3.4 调整归档进程数量/ 234
12.4 设置归档目的地/ 234
12.4.1 设置初始化参数指定归档目的地/ 234
12.4.2 归档目的地的状态/ 238
12.4.3 设置备用归档目的地/ 239
12.5 查询归档重做日志文件信息/ 240
12.6 利用OEM管理归档日志文件/ 241
实践指导/ 242
第13章 初始化参数文件管理/ 243
13.1 服务器初始化参数文件概述/ 243
13.2 创建服务器初始化参数文件/ 244
13.3 初始化参数介绍/ 246
13.4 修改初始化参数/ 247
13.5 导出服务器初始化参数文件/ 251
13.6 恢复丢失或损坏的服务器初始化参数文件/ 252
13.7 查看初始化参数设置/ 253
13.8 利用OEM管理初始化参数/ 255
实践指导/ 256
第14章 表空间管理/ 257
14.1 表空间概述/ 257
14.1.1 表空间概念/ 257
14.1.2 表空间分类/ 258
14.1.3 表空间的管理方式/ 259
14.1.4 表空中区的分配与段的管理/ 260
14.1.5 表空间的管理策略/ 262
14.2 创建表空间/ 263
14.2.1 创建表空间概述/ 263
14.2.2 CREATE TABLESPACE语句/ 263
14.2.3 创建本地管理表空间/ 265
14.2.4 创建大文件表空间/ 267
14.2.5 创建非标准块表空间/ 269
14.2.6 创建加密表空间/ 270
14.3 维护表空间/ 272
14.3.1 ALTER TABLESPACE语句/ 272
14.3.2 改变表空间大小/ 273
14.3.3 改变表空间可用性/ 275
14.3.4 改变表空间读写性/ 277
14.3.5 重命名表空间/ 280
14.3.6 设置默认表空间/ 281
14.3.7 备份表空间/ 282
14.4 删除表空间/ 283
14.5 管理临时表空间/ 285
14.5.1 临时表空间概述/ 285
14.5.2 默认临时表空间/ 285
14.5.3 创建临时表空间/ 286
14.5.4 临时表空间组/ 286
14.5.5 收缩本地管理的临时表空间/ 287
14.6 管理撤销表空间/ 288
14.6.1 撤销表空间概述/ 288
14.6.2 创建撤销表空间/ 290
14.6.3 修改撤销表空间 / 291
14.6.4 删除撤销表空间/ 291
14.6.5 切换撤销表空间/ 292
14.6.6 回退信息保留时间设置/ 292
14.6.7 查询撤销表空间信息/ 293
14.7 查询表空间信息/ 294
14.8 利用OEM管理表空间/ 296
实践指导/ 299
第三篇 模式对象篇
第15章 表与约束管理/ 302
15.1 模式与模式对象/ 302
15.1.1 模式与对象的关系/ 302
15.1.2 模式与用户的关系/ 302
15.1.3 CREATE SCHEMA语句/ 304
15.1.4 创建人力资源管理系统模式/ 304
15.2 表管理概述 / 305
15.2.1 表概述/ 305
15.2.2 表创建策略/ 305
15.3 创建表/ 308
15.3.1 CREATE TABLE语句/ 308
15.3.2 表的存储分配方式设置/ 310
15.3.3 Oracle数据类型/ 311
15.3.4 创建标准表/ 313
15.3.5 创建临时表/ 314
15.3.6 利用子查询创建表/ 316
15.4 修改表/ 318
15.4.1 ALTER TABLE语句/ 318
15.4.2 添加、修改、删除列/ 319
15.4.3 修改表参数设置/ 321
15.4.4 表结构重组/ 322
15.4.5 手动分配与回收表的存储空间/ 322
15.4.6 改变表的读写模式/ 324
15.4.7 重命名表/ 326
15.5 维护表/ 326
15.5.1 为表和列添加注释/ 326
15.5.2 删减表/ 327
15.5.3 删除表/ 328
15.5.4 分析表/ 329
15.5.5 查询表信息/ 332
15.5.6 利用OEM管理表/ 333
15.6 约束概述/ 335
15.6.1 约束的分类/ 335
15.6.2 约束的定义方式/ 337
15.6.3 约束的状态/ 338
15.7 创建与维护约束/ 338
15.7.1 创建表时定义约束/ 338
15.7.2 添加、修改与删除约束/ 341
15.7.3 禁用与激活约束/ 344
15.7.4 验证约束状态/ 346
15.7.5 确定违反约束限制的记录/ 347
15.7.6 延迟约束检查/ 349
15.7.7 查询约束信息/ 350
实践指导/ 351
第16章 索引与索引表管理/ 352
16.1 索引概述/ 352
16.1.1 索引的概念与作用/ 352
16.1.2 索引结构/ 354
16.1.3 索引的分类/ 356
16.1.4 索引的管理策略/ 356
16.2 创建索引/ 358
16.2.1 CREATE INDEX语句/ 358
16.2.2 创建非唯一性索引/ 359
16.2.3 创建唯一性索引/ 360
16.2.4 创建位图索引/ 360
16.2.5 创建反序索引/ 360
16.2.6 创建函数索引/ 360
16.2.7 定义约束时创建索引/ 361
16.2.8 创建大型索引/ 361
16.3 修改索引/ 362
16.3.1 ALTER INDEX语句/ 362
16.3.2 修改索引参数设置/ 363
16.3.3 合并与重建索引/ 363
16.3.4 禁用与启用函数索引/ 364
16.3.5 手动分配与回收索引存储空间/ 365
16.3.6 重命名索引/ 365
16.3.7 打开与关闭索引监控/ 365
16.4 维护索引/ 366
16.4.1 删除索引/ 366
16.4.2 查询索引信息/ 367
16.4.3 利用OEM管理索引/ 368
16.5 索引表概述/ 369
16.5.1 索引表的概念/ 369
16.5.2 索引表与标准表比较/ 369
16.5.3 索引表的优、缺点/ 370
16.5.4 索引表的溢出存储/ 370
16.6 创建索引表/ 371
16.7 维护索引表/ 372
16.7.1 修改索引表/ 372
16.7.2 重建索引表/ 373
16.7.3 将索引表转换为标准表/ 373
16.7.4 利用OEM管理索引表/ 373
实践指导/ 374
第17章 分区表与分区索引管理/ 376
17.1 分区概述/ 376
17.1.1 分区的概念/ 376
17.1.2 分区的优点/ 376
17.1.3 何时需要分区/ 377
17.1.4 基本分区方法/ 377
17.1.5 Oracle 11g分区方法扩展/ 379
17.1.6 分区索引/ 381
17.2 创建分区表/ 382
17.2.1 创建范围分区表/ 382
17.2.2 创建列表分区表/ 385
17.2.3 创建散列分区表/ 386
17.2.4 创建复合分区表/ 387
17.2.5 创建间隔分区表/ 389
17.2.6 创建引用分区表/ 391
17.2.7 创建基于虚拟列的分区表/ 392
17.2.8 创建系统分区表/ 392
17.2.9 创建分区索引表/ 393
17.3 维护分区表/ 394
17.4 创建分区索引/ 402
17.4.1 本地分区索引/ 402
17.4.2 全局分区索引/ 403
17.5 维护分区索引/ 404
17.6 查询分区表和分区索引信息/ 404
17.7 利用OEM管理分区表和分区索引/ 406
实践指导/ 408
第18章 视图与实体化视图管理/ 409
18.1 视图的概念/ 409
18.2 创建视图/ 410
18.2.1 CREATE VIEW语句/ 410
18.2.2 创建简单视图/ 411
18.2.3 创建复杂视图/ 411
18.2.4 创建带约束的视图/ 413
18.2.5 创建内嵌视图/ 413
18.2.6 创建TOP-N视图/ 414
18.3 维护视图/ 414
18.3.1 视图的DML操作/ 414
18.3.2 修改视图定义/ 415
18.3.3 删除视图/ 416
18.3.4 查询视图信息/ 416
18.3.5 利用OEM管理视图/ 417
18.4 实体化视图概述/ 418
18.4.1 实体化视图的概念/ 418
18.4.2 实体化视图的特性/ 419
18.4.3 实体化视图的刷新方法/ 419
18.4.4 实体化视图的刷新模式/ 420
18.4.5 实体化视图日志/ 420
18.4.6 实体化视图类型/ 421
18.4.7 实体化视图的查询重写/ 421
18.4.8 实体化视图的创建方式/ 422
18.5 创建实体化视图/ 422
18.5.1 创建实体化视图的权限需求/ 422
18.5.2 CREATE MATERIALIZED VIEW语句/ 422
18.5.3 创建实体化视图示例/ 423
18.6 维护实体化视图/ 427
18.6.1 修改实体化视图/ 427
18.6.2 删除实体化视图/ 428
18.6.3 查询实体化视图信息/ 428
18.6.4 利用OEM管理实体化视图/ 429
实践指导/ 432
第19章 簇、外部表、序列、同义词与数据库链接管理/ 433
19.1 簇/ 433
19.1.1 簇概念/ 433
19.1.2 簇管理准则/ 434
19.1.3 创建簇/ 434
19.1.4 创建聚簇表/ 435
19.1.5 创建聚簇索引/ 435
19.1.6 修改簇/ 436
19.1.7 删除簇/ 436
19.1.8 查询簇信息/ 436
19.2 外部表/ 437
19.2.1 外部表概述/ 437
19.2.2 创建外部表/ 437
19.2.3 利用外部表导出数据/ 440
19.2.4 修改外部表/ 441
19.2.5 删除外部表/ 441
19.2.6 查询外部表信息/ 442
19.3 序列/ 442
19.3.1 序列的概念/ 442
19.3.2 创建序列/ 442
19.3.3 使用序列/ 443
19.3.4 修改序列/ 445
19.3.5 删除序列/ 445
19.3.6 查询序列信息/ 445
19.3.7 利用OEM管理序列/ 445
19.4 同义词/ 446
19.4.1 同义词的概念/ 446
19.4.2 创建同义词/ 447
19.4.3 在DML语句中使用同义词/ 447
19.4.4 删除同义词/ 447
19.4.5 查询同义词信息/ 447
19.4.6 利用OEM管理同义词/ 448
19.5 数据库链接/ 449
19.5.1 数据库链接概述/ 449
19.5.2 创建数据库链接/ 450
19.5.3 在DML中使用数据库链接/ 451
19.5.4 修改数据库链接/ 451
19.5.5 删除数据库链接/ 451
19.5.6 查询数据库链接信息/ 452
19.5.7 利用OEM管理数据库链接/ 452
实践指导/ 453
第四篇 维护篇
第20章 数据库创建与配置/ 456
20.1 创建数据库概述/ 456
20.1.1 创建数据库的方法/ 456
20.1.2 创建数据库前的规划/ 457
20.1.3 创建数据库的先决条件/ 457
20.2 使用DBCA创建数据库/ 458
20.3 设置DBA认证方式/ 462
20.3.1 DBA职责/ 462
20.3.2 DBA权限/ 463
20.3.3 DBA认证方式/ 464
20.3.4 使用操作系统认证/ 465
20.3.5 使用口令文件认证/ 466
20.3.6 共享与禁用口令文件/ 467
20.3.7 修改口令文件/ 468
20.4 手动创建数据库/ 468
20.4.1 手动创建数据库的步骤/ 468
20.4.2 CREATE DATABASE语句/ 469
20.4.3 手动创建数据库实例/ 471
实践指导/ 477
第21章 数据库启动与关闭/ 478
21.1 数据库启动与关闭概述/ 478
21.1.1 Oracle数据库启动过程/ 478
21.1.2 Oracle数据库关闭过程/ 479
21.1.3 数据库启动与关闭的工具/ 479
21.2 启动Oracle数据库/ 479
21.2.1 启动数据库前的准备/ 479
21.2.2 Oracle数据库启动模式/ 481
21.3 改变数据库的状态/ 484
21.3.1 改变数据库的启动模式/ 484
21.3.2 数据库读写状态转换/ 484
21.3.3 数据库受限与非受限状态转换/ 485
21.4 关闭Oracle数据库/ 486
21.4.1 正常关闭数据库/ 486
21.4.2 事务关闭数据库/ 486
21.4.3 立即关闭数据库/ 487
21.4.4 终止关闭数据库/ 487
21.4.5 数据库关闭超时/ 487
21.5 Oracle数据库的静默与挂起/ 488
21.5.1 静默数据库/ 488
21.5.2 挂起数据库/ 490
21.6 利用OEM启动与关闭数据库/ 491
21.6.1 关闭数据库/ 491
21.6.2 启动数据库/ 492
实践指导/ 493
第22章 网络服务管理与配置/ 495
22.1 Oracle网络服务概述/ 495
22.1.1 网络解决方案/ 495
22.1.2 网络服务组件/ 498
22.1.3 网络连接基本概念/ 500
22.1.4 完整的Oracle网络服务结构/ 503
22.1.5 本地管理的网络配置文件/ 504
22.2 服务器端网络配置/ 504
22.2.1 监听器配置概述/ 504
22.2.2 安装Oracle时配置默认监听器/ 505
22.2.3 配置监听协议地址/ 506
22.2.4 配置静态服务注册/ 507
22.2.5 配置运行参数/ 508
22.2.6 创建与配置新的监听器/ 510
22.2.7 配置动态服务注册/ 512
22.2.8 监听器的管理/ 514
22.3 客户端网络配置/ 516
22.3.1 客户端网络配置概述/ 516
22.3.2 配置本地命名方式/ 516
22.3.3 配置主机命名方式/ 520
22.3.4 配置轻松连接命名方式/ 522
22.4 利用OEM进行网络管理与配置/ 522
22.4.1 配置与管理监听器/ 522
22.4.2 配置与管理本地网络服务名/ 524
实践指导/ 524
第23章 Oracle数据库安全管理/ 525
23.1 Oracle数据库安全控制策略/ 525
23.2 用户管理/ 526
23.2.1 预定义用户/ 526
23.2.2 用户属性/ 527
23.2.3 创建用户/ 528
23.2.4 用户身份认证/ 530
23.2.5 修改用户/ 531
23.2.6 删除用户/ 533
23.2.7 查询用户信息/ 534
23.3 资源限制与口令管理/ 534
23.3.1 资源限制与口令管理概述/ 534
23.3.2 资源限制参数介绍/ 536
23.3.3 口令管理参数介绍/ 537
23.3.4 创建概要文件/ 537
23.3.5 将概要文件分配给用户 / 538
23.3.6 修改概要文件/ 539
23.3.7 删除概要文件/ 539
23.3.8 查询概要文件信息/ 540
23.4 权限管理/ 541
23.4.1 权限概述/ 541
23.4.2 系统权限分类/ 541
23.4.3 系统权限的授权/ 546
23.4.4 系统权限的回收/ 547
23.4.5 对象权限分类 / 549
23.4.6 对象权限的授权 / 551
23.4.7 对象权限的回收 / 552
23.4.8 查询权限信息/ 554
23.5 角色管理/ 556
23.5.1 角色概述/ 556
23.5.2 预定义角色/ 557
23.5.3 创建角色/ 558
23.5.4 角色权限的授予与回收/ 559
23.5.5 修改角色/ 560
23.5.6 禁用与激活角色/ 561
23.5.7 删除角色/ 562
23.5.8 利用角色进行权限管理/ 562
23.5.9 查询角色信息/ 564
23.6 审计/ 565
23.6.1 审计的概念/ 565
23.6.2 审计分类/ 566
23.6.3 审计环境设置/ 566
23.6.4 语句审计/ 567
23.6.5 权限审计/ 570
23.6.6 对象审计/ 571
23.6.7 网络审计/ 572
23.6.8 精细审计/ 572
23.7 利用OEM进行安全管理/ 574
实践指导/ 577
第24章 用户管理的备份与恢复/ 579
24.1 Oracle数据库备份与恢复概述/ 579
24.1.1 备份与恢复的作用/ 579
24.1.2 数据库故障类型与恢复措施/ 580
24.1.3 备份与恢复的解决方案/ 581
24.2 Oracle数据库备份分类/ 582
24.2.1 物理备份与逻辑备份/ 582
24.2.2 一致性备份与不一致性备份/ 583
24.2.3 完全备份与部分备份/ 584
24.2.4 联机备份与脱机备份/ 585
24.2.5 增量备份/ 586
24.3 Oracle数据库备份原则与策略/ 586
24.4 用户管理的脱机备份/ 587
24.4.1 脱机备份概述/ 587
24.4.2 脱机完全备份/ 588
24.4.3 脱机备份表空间与数据文件/ 589
24.5 用户管理的联机备份/ 590
24.5.1 联机备份概述/ 590
24.5.2 联机备份表空间与数据文件/ 591
24.5.3 备份控制文件/ 592
24.5.4 备份归档重做日志文件/ 593
24.5.5 数据库挂起状态备份/ 594
24.5.6 联机完全备份数据库/ 595
24.6 Oracle数据库恢复的工作机制/ 595
24.6.1 数据库恢复原理/ 595
24.6.2 数据库恢复操作基本步骤/ 596
24.6.3 数据库恢复分类/ 596
24.7 数据库恢复的原则与策略/ 597
24.8 数据库实例恢复过程/ 598
24.9 非归档模式下的介质恢复/ 598
24.10 归档模式下的完全介质恢复/ 600
24.10.1 完全恢复概述/ 600
24.10.2 数据库关闭状态下的完全恢复/ 601
24.10.3 数据库打开状态下的完全恢复/ 602
24.11 归档模式下的不完全介质恢复/ 603
24.11.1 不完全恢复概述/ 603
24.11.2 归档模式下不完全恢复步骤/ 604
24.12 控制文件的恢复/ 605
24.12.1 丢失多路复用控制文件的一个成员/ 606
24.12.2 丢失所有当前的控制文件/ 606
24.12.3 重建控制文件/ 608
实践指导/ 609
第25章 基于RMAN的备份与恢复/ 611
25.1 RMAN概述/ 611
25.1.1 RMAN介绍/ 611
25.1.2 RMAN运行环境组件/ 612
25.1.3 RMAN基本概念/ 614
25.1.4 RMAN预定义配置参数/ 616
25.2 RMAN基本操作/ 617
25.2.1 连接数据库/ 617
25.2.2 创建恢复目录/ 618
25.2.3 注册数据库/ 618
25.2.4 启动与关闭数据库/ 619
25.2.5 执行SQL语句/ 619
25.2.6 SHOW命令/ 620
25.2.7 CONFIGURE命令/ 620
25.2.8 LIST命令/ 620
25.2.9 REPORT命令/ 621
25.2.10 用RMAN执行操作系统命令/ 621
25.3 RMAN备份的基本概念/ 621
25.3.1 RMAN备份对象/ 621
25.3.2 RMAN备份形式/ 622
25.3.3 RMAN备份类型/ 623
25.3.4 增量备份的工作机制/ 624
25.3.5 复合备份集/ 625
25.3.6 多副本备份/ 626
25.3.7 并行备份/ 627
25.4 通道分配/ 628
25.4.1 自动分配通道/ 628
25.4.2 手动分配通道/ 629
25.5 利用RMAN备份数据库/ 630
25.5.1 BACKUP命令/ 630
25.5.2 备份文件存储格式/ 632
25.5.3 备份整个数据库/ 633
25.5.4 备份表空间/ 635
25.5.5 备份数据文件/ 636
25.5.6 备份控制文件/ 636
25.5.7 备份服务器初始化参数文件/ 637
25.5.8 备份归档重做日志文件/ 638
25.5.9 非归档模式下的备份/ 639
25.5.10 多副本备份/ 640
25.5.11 增量备份/ 641
25.5.12 镜像复制/ 642
25.6 利用RMAN恢复数据库/ 644
25.6.1 RMAN恢复的基本概念/ 644
25.6.2 RESTOER与RECOVER命令/ 645
25.6.3 利用RMAN进行完全恢复/ 647
25.6.4 利用RMAN进行不完全恢复/ 649
25.6.5 控制文件的恢复/ 650
25.6.6 将数据文件恢复到新的位置/ 652
实践指导/ 654
第26章 Oracle数据库逻辑备份与恢复/ 656
26.1 逻辑备份与恢复概述/ 656
26.1.1 逻辑备份与恢复简介/ 656
26.1.2 数据泵技术介绍/ 657
26.2 创建目录对象/ 657
26.3 使用EXPDP导出数据/ 658
26.3.1 EXPDP调用模式与导出模式/ 658
26.3.2 EXPDP命令参数与交互式命令/ 659
26.3.3 EXPDP导出实例/ 664
26.4 使用IMPDP导入数据/ 665
26.4.1 IMPDP调用接口与导入模式/ 665
26.4.2 IMPDP命令参数与交互式命令/ 666
26.4.3 IMPDP导入实例/ 671
26.5 使用EXP/IMP导出与导入数据/ 673
26.5.1 EXP/IMP概述/ 673
26.5.2 利用EXP导出数据/ 674
26.5.3 利用IMP导入数据/ 676
实践指导/ 678
第27章 Oracle数据库闪回技术/ 679
27.1 闪回技术概述/ 679
27.1.1 闪回技术介绍/ 679
27.1.2 闪回特性分类/ 679
27.2 闪回查询/ 680
27.2.1 闪回查询概述/ 680
27.2.2 撤销表空间相关参数配置/ 681
27.2.3 闪回查询操作/ 681
27.3 闪回版本查询/ 684
27.3.1 闪回版本查询概述/ 684
27.3.2 闪回版本查询操作/ 685
27.4 闪回事务查询/ 687
27.4.1 闪回事务查询概述/ 687
27.4.2 闪回事务查询操作/ 688
27.5 闪回表/ 690
27.5.1 闪回表概述/ 690
27.5.2 闪回表操作/ 691
27.6 闪回删除/ 692
27.6.1 闪回删除概述/ 692
27.6.2 回收站的管理/ 693
27.6.3 闪回删除操作/ 695
27.7 闪回数据库/ 695
27.7.1 闪回数据库概述/ 695
27.7.2 快速恢复区的配置/ 696
27.7.3 闪回数据库的配置/ 698
27.7.4 闪回数据库操作/ 699
27.8 闪回数据归档/ 700
27.8.1 闪回数据归档概念/ 700
27.8.2 闪回数据归档区的管理/ 701
27.8.3 启用或禁用表的闪回数据归档/ 703
27.8.4 闪回数据归档操作示例/ 703
实践指导/ 705
第28章 使用OEM备份与恢复数据库/ 706
28.1 利用OEM备份与恢复数据库概述/ 706
28.2 物理备份数据库/ 706
28.2.1 配置备份设置/ 706
28.2.2 备份数据库/ 708
28.2.3 管理数据库备份/ 709
28.3 物理恢复数据库/ 710
28.3.1 配置恢复设置/ 710
28.3.2 恢复数据库/ 712
28.4 逻辑备份与恢复数据库/ 713
28.4.1 创建目录对象/ 713
28.4.2 数据导出/ 714
28.4.3 数据导入/ 715
实践指导/ 717
第29章 Oracle数据库性能优化/ 718
29.1 数据库性能优化概述/ 718
29.1.1 数据库性能优化的必要性/ 718
29.1.2 影响数据库系统性能的因素/ 718
29.1.3 数据库性能优化的步骤/ 719
29.2 数据库实例性能优化/ 719
29.2.1 内存结构优化概述/ 720
29.2.2 数据缓冲区调整/ 721
29.2.3 共享池调整/ 724
29.2.4 重做日志缓冲区调整/ 727
29.2.5 PGA调整/ 727
29.2.6 数据库碎片整理/ 728
29.2.7 磁盘I/O优化与调整/ 729
29.3 SQL语句优化 / 729
29.3.1 SQL语句优化概述/ 729
29.3.2 SQL语句执行过程/ 732
29.3.3 将常用程序驻留内存/ 732
29.3.4 有效使用索引/ 734
29.3.5 采用适当的多表连接技术/ 735
29.3.6 SQL语句使用技巧/ 736
29.4 其他方面性能优化/ 736
29.4.1 网络优化/ 736
29.4.2 应用程序优化 / 737
实践指导/ 738
第五篇 开发篇
第30章 SQL语言应用基础/ 740
30.1 SQL语言概述/ 740
30.1.1 SQL语言介绍/ 740
30.1.2 SQL语言的分类/ 740
30.1.3 SQL语言的特点/ 741
30.2 数据查询/ 741
30.2.1 数据查询的基本语法/ 741
30.2.2 简单查询/ 742
30.2.3 分组统计查询/ 747
30.2.4 累计统计查询 / 753
30.2.5 连接查询 / 754
30.2.6子查询/ 759
30.2.7 层次查询/ 762
30.2.8 集合操作/ 764
30.3 数据操纵/ 766
30.3.1 插入数据/ 766
30.3.2 修改数据/ 771
30.3.3 MERGE语句/ 772
30.3.4 删除数据/ 774
30.4 事务控制/ 774
30.4.1 事务概述/ 774
30.4.2 Oracle事务处理/ 775
30.5 SQL函数/ 777
30.5.1 SQL函数分类/ 777
30.5.2 数值函数/ 777
30.5.3 字符函数/ 779
30.5.4 日期函数/ 781
30.5.5 转换函数/ 783
30.5.6 其他函数/ 786
实践指导/ 788
第31章 PL/SQL程序设计基础/ 790
31.1 PL/SQL概述/ 790
31.1.1 PL/SQL特点/ 790
31.1.2 PL/SQL功能特性/ 791
31.1.3 PL/SQL执行过程与开发工具/ 791
31.2 PL/SQL基础/ 792
31.2.1 PL/SQL程序结构/ 792
31.2.2 词法单元/ 794
31.2.3 数据类型/ 796
31.2.4 变量与常量/ 799
31.2.5 PL/SQL记录 / 800
31.2.6 编译指示/ 803
31.2.7 PL/SQL中的SQL语句/ 803
31.3 控制结构/ 806
31.3.1 选择结构/ 806
31.3.2 循环结构/ 809
31.3.3 跳转结构/ 811
31.4 游标/ 811
31.4.1 游标的概念及类型/ 811
31.4.2 显式游标/ 812
31.4.3 隐式游标/ 819
31.4.4 游标变量/ 820
31.5 异常处理/ 823
31.5.1 异常概述/ 823
31.5.2 异常处理过程/ 825
31.5.3 异常的传播/ 829
31.6 存储过程/ 830
31.6.1 概述/ 830
31.6.2 存储过程的创建/ 830
31.6.3 存储过程的调用/ 834
31.6.4 存储过程的管理/ 835
31.7 函数/ 835
31.7.1 函数的创建/ 835
31.7.2 函数的调用/ 837
31.7.3 函数的管理/ 837
31.8 包/ 838
31.8.1 包的创建/ 838
31.8.2 包的调用/ 840
31.8.3 包重载/ 840
31.8.4 包的初始化/ 841
31.8.5 包的持续性/ 842
31.8.6 包的串行化/ 845
31.8.7 包的管理/ 845
31.9 触发器/ 846
31.9.1 触发器概述/ 846
31.9.2 DML触发器/ 847
31.9.3 INSTEAD OF触发器/ 850
31.9.4 系统触发器/ 851
31.9.5 变异表触发器/ 854
31.9.6 触发器的管理/ 856
实践指导/ 857
第32章 PL/SQL高级程序设计/ 859
32.1 集合/ 859
32.1.1 索引表/ 859
32.1.2 嵌套表/ 863
32.1.3 可变数组/ 866
32.1.4 集合类型在数据库中的应用/ 868
32.2 批绑定/ 870
32.2.1 批绑定概述/ 870
32.2.2 批DML操作/ 871
32.2.3 批查询/ 875
32.2.4 批绑定属性/ 876
32.3 动态SQL/ 877
32.3.1 动态SQL概述/ 877
32.3.2 动态非查询语句及单行查询语句/ 878
32.3.3 动态多行查询语句/ 882
32.3.4 动态批绑定/ 884
32.4 利用PL/SQL实现分页查询/ 886
32.4.1 利用集合实现分页查询/ 887
32.4.2 利用游标变量实现分页查询/ 889
32.4.3 分页查询在Java开发中的应用/ 891
实践指导/ 892
猜您喜欢