目录 1
第1章 Oracle Database 10g世界 1
1.1 数据库概念 2
1.2 Oracle Database 10g的体系架构 3
1.2.1 文件系统 3
1.2.2 背景进程 4
1.2.3 存储模式 6
1.3 数据类型 7
1.3.1 SQL数据类型 7
1.3.2 PL/SQL数据类型 9
1.3.3 常用的数据类型 10
1.4 数据库中的对象 12
1.4.1 表 12
1.4.2 其他对象 13
1.5 用户和权限 14
1.5.1 用户和角色 14
6.5 本章小结 15
1.5.2 对象权限和系统权限 15
1.6 数据库管理员 17
1.7 关键网格技术 21
1.9.1 填空题 23
1.9.2 选择题 23
1.8 本章小结 23
1.9 习题与上机操作 23
1.9.3 问答题 24
1.9.4 上机操作 24
第2章 用户和权限 25
2.1 用户管理 26
2.1.1 创建用户 26
2.1.2 修改用户口令 28
2.1.3 锁定用户和解除用户锁定 29
2.1.5 查看用户信息和删除用户 30
2.1.4 修改用户的默认表空间 30
2.2 系统权限管理 31
2.2.1 为用户授予系统权限 32
2.2.2 查看用户的系统权限 33
2.2.3 收回授予的系统权限 34
2.3 对象权限管理 35
2.3.1 为用户授予对象权限 35
2.3.2 查看用户的对象权限 36
2.3.3 收回授予的对象权限 38
2.4 同义词管理 39
2.5 角色管理 40
2.5.1 创建角色 41
2.5.2 为角色和用户授予权限 41
2.5.3 查看角色信息 42
2.5.4 默认的角色 44
2.5.5 收回角色的权限和删除角色 44
2.7.2 选择题 45
2.6 本章小结 45
2.7 习题与上机操作 45
2.7.1 填空题 45
2.7.3 问答题 46
2.7.4 上机操作 46
第3章 表 47
3.1 创建表 48
3.1.1 使用create table 48
3.1.2 查看表的系统信息 50
3.2.1 增加列 53
3.2 修改表结构 53
3.2.2 更新列 54
3.2.3 删除列 55
3.3 约束 55
3.3.1 非空约束 55
3.3.2 主键约束 57
3.3.3 惟一性约束 58
3.3.4 外键约束 59
33.5 检查约束 61
3.3.6 缺省约束 62
3.3.7 禁止和激活约束 63
3.3.8 查看约束信息 64
3.3.9 删除约束 65
3.4 ER图 66
3.5 更改表名称 67
3.6 注释表 68
3.7 删除表 69
3.8 press示例 70
3.8.1 nationality表 70
3.8.2 authors表 71
3.8.3 book_type表 72
3.8.4 books表 73
3.8.5 write_book表 74
3.8.6 publishers表 75
3.8 publish_book表 76
3.9 本章小结 77
3.10 习题与上机操作 77
3.10.1 填空题 77
3.10.2 选择题 78
3.10.3 问答题 78
3.10.4 上机操作 78
第4章 操纵数据 79
4.1.2 为所有列或部分列插入数据 80
4.1 插入数据 80
4.1.1 insert语句 80
4.1.3 使用default和null关键字 82
4.1.4 在插入数据中使用引号 83
4.1.5 使用insert select语句插入数据 83
4.2 更新数据 84
4.3 删除数据 86
4.4 合并操作 88
4.4.1 基本的合并操作功能 88
4.4.2 新增的合并操作功能 91
4.5 闪回查询 91
4.6 事务 94
4.8.2 选择题 96
4.8 习题与上机操作 96
4.8.1 填空题 96
4.7 本章小结 96
4.8.3 问答题 97
4.8.4 上机操作 97
第5章 SQL*Plus 99
5.1 SQL*Plus的运行环境 100
5.1.1 使用图形工其设置SQL*Plus运行环境 100
5.1.2 使用set语句设置运行环境 102
5.2 SQL*Plus命令 103
5.2.1 help 103
5.2.2 describe 104
5.2.3 prompt 105
5.2.4 spool命令 106
5.2.5 show 107
5.3 格式化查询结果 110
5.3.1 column 110
5.3.2 ttitle和btitle 111
5.3.3 pause 112
5.3.4 pagesize 113
5.3.5 linesize 114
5.3.6 feedback 115
5.3.7 numformat 116
5.3.8 long 117
5.4.1 临时变量 119
5.4 变最 119
5.4.2 定义的变量 120
5.5 SQL*Plus缓冲区 123
5.6 脚本 124
5.7 本章小结 126
5.8 习题与上机操作 126
5.8.1 填空题 126
5.8.4 上机操作 127
5.8.2 选择题 127
5.8.3 问答题 127
第6章 检索数据 129
6.1 检索单表数据 130
6.1.1 检索全部数据 130
6.1.2 算术运算 131
6.1.3 列的别名 132
6.1.4 合并列的输出结果 134
6.1.5 空值 135
6.1.6 distinct关键字 136
6.2.1 比较运算符 137
6.2 过滤数据 137
6.2.2 SQL运算符 139
6.2.3 逻辑运算符 141
6.2.4 运算符的优先级 142
6.3 排序数据 144
6.4 检索多表数据 145
6.4.1 表的别名 145
6.4.2 笛卡尔乘积 146
6.4.3 内连接 148
6.4.4 外连接 149
6.4.6 交叉连接 151
6.4.5 自连接 151
6.6 习题与上机操作 152
6.6.1 填空题 152
6.6.2 选择题 153
6.6.3 问答题 153
6.6.4 上机操作 153
第7章 使用函数 155
7.1 使用字符函数 156
7.1.1 字符函数的特点和类型 156
7.1.2 字符函数示例 157
7.2 使用数学函数 164
7.2.1 数学函数的特点和类型 165
7.2.2 数学函数示例 166
7.3 使用转换函数 170
7.3.1 转换函数的特点和类型 170
7.3.2 to_char()函数 172
7.3.3 to_number()函数 173
7.4 使用正规表达式函数 174
7.4.1 正规表达式的概念 174
7.4.2 使用正规表达式 175
7.5.2 使用合计函数 179
7.5.1 合计函数的类型 179
7.5 使用合计函数 179
7.6 使用分组技术 182
7.7 本章小结 185
7.8 习题与上机操作 185
7.8.1 填空题 185
7.8.2 选择题 186
7.8.3 问答题 186
7.8.4 上机操作 186
第8章 日期和时间 187
8.1 设置默认的日期格式 188
8.2.1 to_char()函数 190
8.2 转换日期数据 190
8.2.2 to_date()函数 193
8.3 两位数字年和四位数字年 194
8.4 日期和时间函数 195
8.4.1 日期和时间函数的类型 196
8.4.2 使用日期和时间函数的示例 196
8.5 时区 200
8.5.1 时区的概念 200
8.5.2 使用时区 202
8.6 时戳 202
8.6.1 时戳类型 203
8.6.2 时戳函数 204
8.7.1 时长类型 206
8.7 时长 206
8.7.2 使用时长数据 207
8.8 本章小结 208
8.9 习题与上机操作 209
8.9.1 填空题 209
8.9.2 选择题 209
8.9.3 问答题 210
8.9.4 上机操作 210
第9章 子查询 211
9.1 子查询的概念和类型 212
9.2.1 使用单行子查询 213
9.2 单行子查询 213
9.2.2 常见的错误 215
9.3 多行子查询 216
9.4 多列子查询 219
9.5 关联子查询 220
9.6 嵌套子查询 223
9.7 本章小结 226
9.8 习题与上机操作 226
9.8.1 填空题 226
9.8.2 选择题 226
9.8.4 上机操作 227
9.8.3 问答题 227
第10章 集合查询和层次查询 229
10.1 集合查询 230
10.1.1 集合查询示例 230
10.1.2 使用集合查询 231
10.2 层次查询 234
10.2.1 层次查询的范例 234
10.2.2 层次查询的语法 236
10.2.3 层次查询示例 237
10.3.1 decode()函数 241
10.3 情景查询 241
10.3.2 case表达式 242
10.4 翻译函数 244
10.5 本章小结 245
10.6 习题与上机操作 245
10.6.1 填空题 245
10.6.2 选择题 246
10.6.3 问答题 246
10.6.4 上机操作 246
第11章 分析查询 247
11.1.1 分析查询和分析函数 248
11.1.2 分析查询示例 248
11.1 分析查询概述 248
11.2 窗口函数 249
11.2.1 窗口函数的语法和特点 249
11.2.2 使用窗口函数示例 250
11.3 制表函数 254
11.3.1 制表函数的特点 255
11.3.2 使用制表函数示例 255
11.4 检索当前行的周围行 256
11.5 等级函数 257
11.6 线性回归函数 261
11.7 分析函数的性能分析 263
11.9.1 填空题 265
11.9.2 选择题 265
11.8 本章小结 265
11.9 习题和上机操作 265
11.9.3 问答题 266
11.9.4 上机操作 266
第12章 PL/SQL 267
12.1 PL/SQL概述 268
12.1.1 PL/SQL体系架构 268
12.1.2 PL/SQL的基本结构 269
12.1.3 一个实例 269
12.2.1 PL/SQL支持的字符和运算符 270
12.2 变量和数据类型 270
12.2.2 主要的数据类型 271
12.3 条件结构和循环结构 272
12.3.1 条件结构 272
12.3.2 循环结构 273
12.4 游标 275
12.5 异常 278
12.6 管理存储程序 279
12.6.1 过程 279
12.6.2 函数 281
12.6.3 程序包 283
12.6.4 触发器 285
12.8.1 填空题 287
12.8.2 选择题 287
12.7 本章小结 287
12.8 习题与上机操作 287
12.8.3 问答题 288
12.8.4 上机操作 288
第13章 管理其他对象 289
13.1 序列 290
13.1.1 创建序列 290
13.1.2 使用序列 292
13.2 索引 293
13.3.1 创建视图 294
13.3 视图 294
13.3.2 使用视图 296
13.4 对象 298
13.5 集合 302
13.5.1 变数组 302
13.5.2 嵌套表 303
13.5.3 关联数组 305
13.6 本章小结 306
13.7 习题和上机操作 306
13.7.1 填空题 306
13.7.2 选择题 306
13.7.4 上机操作 307
13.7.3 问答题 307
第14章 XML 309
14.1 XML概述 310
14.2 基于数据库中的数据生成XML数据 311
14.3 在数据库中存储XML数据 314
14.4 检索和更新XML数据 317
14.5 创建基于XML数据的视图 318
14.6 本章小结 319
14.7.4 上机操作 320
14.7.3 问答题 320
14.7.1 填空题 320
14.7.2 选择题 320
14.7 习题和上机操作 320
第15章 使用大对象 321
15.1 大对象的特点和类型 322
15.2 创建和使用大对象 322
15.2.1 创建大对象表 322
15.2.2 使用大对象数据 324
15.3 提高大对象使用效率 326
15.3.1 数据分区技术 326
15.3.2 压缩数据 329
15.3.3 并行处理 330
15.3.4 使用物化视图 331
15.3.5 使用RAC技术 332
15.4 本章小结 333
15.5 习题和上机操作 333
15.5.1 填空题 333
15.5.2 选择题 333
15.5.3 问答题 334
15.5.4 上机操作 334
第16章 性能调整与优化 335
16.2.1 使用where子句过滤数据 336
16.2 优化查询语句技术 336
16.1 概述 336
16.2.2 连接查询多个表而不是执行多个查询 337
16.2.3 使用case表达式而不是执行多个查询 338
16.2.4 在连接查询中使用完全限定的列名引用 339
16.2.5 在表中增加索引 340
16.2.6 使用where子句而不是使用having子句 340
16.2.7 使用union all关键字而不是使用union关键字 341
16.2.8 使用连接查询而不是使用子查询 342
16.2.9 使用exists关键字而不是使用in关键字 343
16.3 绑定变量技术 344
16.4 explain plan 345
16.5 autotrace 347
16.6 本章小结 349
16.7 习题与上机操作 349
16.7.1 填空题 349
16.7.2 选择题 350
16.7.3 问答题 350
16.7.4 上机操作 350
附录A Oracle Database 10g综合测试题 351
附录B 习题与上机操作参考答案 355
附录C Oracle Database 10g综合测试题参考答案 365