图书目录

第1章  Oracle 11g简介 1

1.1  关系数据库的基本理论 1

1.1.1  数据库系统与关系数据库 1

1.1.2  关系数据库的逻辑模型 2

1.1.3  关系数据库的设计规范 3

1.2  Oracle数据库与网格技术 6

1.2.1  网格技术 6

1.2.2  Oracle网格体系结构 7

1.3  Oracle应用结构 8

1.3.1  多数据库的独立宿主结构 8

1.3.2  客户机/服务器结构 9

1.3.3  分布式结构 9

1.4  Oracle 11g for Windows的

安装与配置 10

1.5  Oracle 11g的管理工具 16

1.5.1  使用SQL*Plus 16

1.5.2  使用Oracle Enterprise

Manager 17

1.5.3  使用DBCA创建数据库 18

第2章  Oracle的体系结构 19

2.1  Oracle体系结构概述 19

2.2  逻辑存储结构 20

2.2.1  数据块 21

2.2.2  盘区 22

2.2.3  段 22

2.2.4  表空间 23

2.3  物理存储结构 25

2.3.1  数据文件 25

2.3.2  控制文件 26

2.3.3  其他文件 27

2.4  实例的内存结构 30

2.4.1  系统全局区 30

2.4.2  程序全局区 33

2.5  实例的进程结构 35

2.5.1  用户进程 35

2.5.2  服务器进程 36

2.5.3  后台进程 36

2.6  数据字典 41

2.7  思考与练习 42

第3章  管理Oracle数据库 44

3.1  管理初始化参数 44

3.1.1  常用初始化参数 44

3.1.2  初始化参数文件 45

3.1.3  创建初始化参数文件 46

3.1.4  显示和设置初始化

参数文件 47

3.2  启动数据库与实例 50

3.2.1  启动数据库的步骤 50

3.2.2  启动模式 51

3.2.3  转换启动模式 53

3.3  关闭数据库与实例 55

3.3.1  数据库的关闭步骤 55

3.3.2  正常关闭方式

(NORMAL) 56

3.3.3  立即关闭方式

(IMMEDIATE) 56

3.3.4  事务关闭方式

(TRANSACTIONAL) 57

3.3.5  终止关闭方式

(ABORT) 57

3.4  数据库的特殊状态 58

3.4.1  静默状态 58

3.4.2  挂起状态 59

3.5  思考与练习 60

第4章  SQL*Plus命令 62

4.1  SQL*Plus的运行环境 62

4.1.1  使用SET语句选项 62

4.1.2  设置运行环境示例 64

4.2  SQL*Plus命令 67

4.2.1  HELP命令 67

4.2.2  DESCRIBE命令 68

4.2.3  PROMPT命令 69

4.2.4  SPOOL命令 69

4.3  格式化查询结果 70

4.3.1  COLUMN命令 70

4.3.2  TTITLE和BTITLE命令 73

4.4  缓存区 74

4.5  实验指导 76

4.6  思考与练习 77

第5章  SQL语句基础 78

5.1  用户模式 78

5.1.1  SCOTT模式 78

5.1.2  HR模式 79

5.1.3  其他模式 80

5.2  SELECT语句的用法 81

5.2.1  检索单表数据 81

5.2.2  过滤数据 84

5.2.3  排序数据 87

5.2.4  多表检索 89

5.3  函数的使用 94

5.3.1  字符函数 94

5.3.2  数学函数 97

5.3.3  时间和日期函数 98

5.3.4  转换函数 99

5.3.5  统计函数 101

5.3.6  分组技术 101

5.4  子查询 103

5.4.1  子查询的概念 103

5.4.2  单行子查询 104

5.4.3  多行子查询 105

5.4.4  关联子查询 106

5.5  操作数据 107

5.5.1  插入数据 107

5.5.2  更新数据 109

5.5.3  删除数据 109

5.6  Oracle事务处理 110

5.6.1  事务的基本概念 110

5.6.2  事务控制 111

5.7  实验指导 113

5.8  思考与练习 114

第6章  PL/SQL编程基础 116

6.1  PL/SQL概述 116

6.2  变量与数据类型 118

6.2.1  PL/SQL变量的声明 118

6.2.2  %TYPE变量 119

6.2.3  复合变量 120

6.3  条件语句 122

6.3.1  IF…THEN条件语句 122

6.3.2  IF…THEN…ELSE

条件语句 123

6.3.3  IF…THEN…ELSIF

条件语句 124

6.3.4  CASE条件语句 125

6.4  循环语句 126

6.4.1  LOOP…END LOOP循环 126

6.4.2  WHILE循环 127

6.4.3  FOR循环 128

6.5  游标的使用 130

6.5.1  隐式游标 130

6.5.2  显式游标 132

6.5.3  游标FOR循环 134

6.6  异常处理 135

6.6.1  预定义异常 135

6.6.2  非预定义异常 138

6.6.3  用户定义的异常 139

6.7  实验指导 140

6.8  思考与练习 143

第7章  存储过程、触发器

和程序包 145

7.1  存储过程 145

7.1.1  创建存储过程 145

7.1.2  参数 148

7.1.3  默认值 153

7.1.4  过程中的事务处理 154

7.2  函数 155

7.3  触发器 156

7.3.1  触发器概述 157

7.3.2  语句级触发器 158

7.3.3  行级触发器 161

7.3.4  instead of 触发器 162

7.3.5  用户事件触发器 164

7.4  程序包 166

7.4.1  程序包规范 166

7.4.2  程序包主体 167

7.4.3  重载 169

7.5  实验指导 171

7.6  思考与练习 173

第8章  管理表 176

8.1  创建表 176

8.1.1  表结构 176

8.1.2  创建表 178

8.1.3  表特性 179

8.2  修改表 184

8.2.1  增加和删除字段 184

8.2.2  更新字段 186

8.2.3  重命名表 186

8.2.4  改变表的存储表空间

和存储参数 187

8.2.5  删除表定义 188

8.2.6  修改表的状态 189

8.3  定义和管理数据完整性约束 190

8.3.1  非空约束 191

8.3.2  主键约束 192

8.3.3  唯一性约束 193

8.3.4  外键约束 194

8.3.5  禁止和激活约束 197

8.3.6  删除约束 198

8.4  使用大对象数据类型 199

8.5  实验指导 201

8.6  思考与练习 202

第9章  索引与索引组织表 204

9.1  索引基础 204

9.2  建立索引 207

9.2.1  建立B树索引 207

9.2.2  建立位图索引 209

9.2.3  建立反向键索引 212

9.2.4  基于函数的索引 214

9.3  修改索引 215

9.3.1  合并索引和重建索引 215

9.3.2  删除索引 216

9.3.3  显示索引信息 217

9.4  索引组织表 218

9.4.1  索引组织表与标准表 219

9.4.2  修改索引组织表 220

9.5  实验指导 221

9.6  思考与练习 222

第10章  其他模式对象 224

10.1  管理表分区与索引分区 224

10.1.1  分区的概念 224

10.1.2  建立分区表 225

10.1.3  修改分区表 231

10.1.4  分区索引和全局索引 236

10.2  外部表 238

10.2.1  建立外部表 238

10.2.2  处理外部表错误 239

10.2.3  修改外部表 241

10.3  临时表 241

10.4  簇与簇表 242

10.4.1  索引簇 242

10.4.2  散列簇 245

10.4.3  显示簇信息 248

10.5  管理视图 249

10.5.1  创建视图 249

10.5.2  管理视图 252

10.6  管理序列 254

10.6.1  创建序列 254

10.6.2  修改序列 256

10.7  管理同义词 256

10.8  实验指导 258

10.9  思考与练习 260

第11章  控制文件与日志文件的

 管理 262

11.1  管理控制文件 262

11.1.1  控制文件简介 262

11.1.2  复合控制文件 263

11.1.3  建立控制文件 265

11.1.4  控制文件的备份与恢复 268

11.1.5  删除控制文件 269

11.1.6  查看控制文件信息 269

11.2  管理重做日志文件 270

11.2.1  重做日志简介 270

11.2.2  增加重做日志 271

11.2.3  删除重做日志 272

11.2.4  改变重做日志的

 位置或名称 273

11.2.5  显示重做日志信息 274

11.3  管理归档日志 275

11.3.1  日志操作模式 275

11.3.2  控制归档 276

11.3.3  配置归档文件格式 278

11.3.4  配置归档位置 278

11.3.5  显示归档日志信息 280

11.4  查看日志信息 281

11.4.1  LogMiner概述 281

11.4.2  创建LogMiner使用的

 字典文件 282

11.4.3  指定分析的日志文件 283

11.4.4  启动LogMiner 284

11.4.5  查看分析结果 285

11.4.6  结束LogMiner 285

11.5  实验指导 285

11.6  思考与练习 286

第12章  管理表空间和数据文件 288

12.1  建立表空间 288

12.1.1  建立普通表空间 288

12.1.2  建立大文件表空间 290

12.1.3  建立临时表空间 291

12.1.4  建立非标准块表空间 293

12.2  维护表空间 294

12.2.1  改变表空间可用性 294

12.2.2  改变表空间读写状态 296

12.2.3  改变表空间名称 297

12.2.4  设置默认表空间 297

12.2.5  删除表空间 297

12.2.6  查询表空间信息 298

12.3  管理数据文件 298

12.3.1  数据文件的管理策略 298

12.3.2  添加表空间数据文件 299

12.3.3  改变数据文件的大小 300

12.3.4  改变数据文件的可用性 301

12.3.5  改变数据文件的

 名称和位置 301

12.4  管理UNDO表空间 303

12.4.1  UNDO概述 303

12.4.2  UNDO参数 304

12.4.3  建立UNDO表空间 304

12.4.4  修改UNDO表空间 305

12.4.5  切换UNDO表空间 305

12.4.6  设置UNDO记录保留

 的时间 306

12.4.7  删除UNDO表空间 306

12.4.8  查看UNDO表

 空间信息 307

12.5  实验指导 307

12.6  思考与练习 308

第13章  用户权限与安全 310

13.1  用户和模式 310

13.2  管理用户 311

13.2.1  创建用户 311

13.2.2  修改用户 314

13.2.3  删除用户 315

13.3  资源配置PROFILE 316

13.3.1  PROFILE概念 316

13.3.2  使用PROFILE

 管理密码 316

13.3.3  使用PROFILE

 管理资源 319

13.3.4  修改和删除PROFILE 321

13.3.5  显示PROFILE信息 322

13.4  管理权限 323

13.4.1  权限简介 323

13.4.2  管理系统权限 324

13.4.3  管理对象权限 329

13.5  管理角色 332

13.5.1  角色的概念 332

13.5.2  预定义角色 333

13.5.3  管理自定义角色 334

13.6  实验指导 338

13.7  思考与练习 339

第14章  导出与导入 341

14.1  EXPDP和IMPDP简介 341

14.2  EXPDP导出数据 342

14.2.1  调用EXPDP 342

14.2.2  EXPDP命令参数 345

14.3  IMPDP导入数据 347

14.3.1  IMPDP参数 347

14.3.2  调用IMPDP 349

14.3.3  移动表空间 350

14.4  SQL*Loader导入外部数据 353

14.4.1  SQL *Loader概述 353

14.4.2  加载数据 354

14.5  实验指导 356

14.6  思考与练习 357

第15章  备份与恢复 358

15.1  备份与恢复概述 358

15.2  RMAN概述 359

15.2.1  RMAN组件 360

15.2.2  RMAN通道 362

15.2.3  RMAN命令 366

15.3  使用RMAN备份数据库 367

15.3.1  RMAN备份策略 367

15.3.2  使用RMAN备份数据

库文件和归档日志 370

15.3.3  多重备份 373

15.3.4  BACKUP增量备份 373

15.3.5  镜像复制 374

15.4  RMAN完全恢复 375

15.4.1  RMAN恢复机制 375

15.4.2  恢复处于NOARCHIVELOG

模式的数据库 377

15.4.3  恢复处于ARCHIVELOG

模式的数据库 378

15.5  RMAN不完全恢复 379

15.5.1  基于时间的不完全恢复 379

15.5.2  基于撤销的不完全恢复 381

15.5.3  基于更改的不完全恢复 382

15.6  维护RMAN 383

15.6.1  交叉验证备份

 CROSSCHECK 383

15.6.2  添加操作系统备份 384

15.6.3  查看备份信息 384

15.6.4  定义保留备份的策略 386

15.7  实验指导 387

15.8  思考与练习 388