第1章 使用Oracle设计关系数据库 1
1.1 定位服务器技术 2
1.1.1 Oracle服务器的体系结构 3
1.1.2 Oracle WebLogic Server 4
1.1.3 Oracle Enterprise Manager 5
1.1.4 云计算 6
1.1.5 开发工具和语言 6
1.2 理解关系结构 7
1.2.1 真实的案例 7
1.2.2 数据建模 8
1.2.3 实体和关系 8
1.2.4 行和表 15
1.3 SQL语言概述 18
1.3.1 SQL标准 18
1.3.2 SQL命令 18
1.3.3 面向集合的语言 19
1.4 使用客户工具 19
1.4.1 SQL*Plus 20
1.4.2 SQL Developer 24
1.5 创建演示模式 28
1.5.1 用户和模式 28
1.5.2 HR和OE模式 29
1.5.3 创建演示模式 31
1.6 认证小结 32
1.7 本章知识点回顾 33
1.8 本章测试题 33
1.8.1 自测题 33
1.8.2 实验题 35
1.8.3 自测题答案 35
1.8.4 实验题答案 37
第2章 使用SQL SELECT语句检索数据 39
2.1 列出SQL SELECT语句的功能 40
2.1.1 SQL SELECT语句介绍 40
2.1.2 DESCRIBE表命令 40
2.1.3 SELECT语句的功能 44
2.2 执行基本的SELECT语句 44
2.2.1 基本的SELECT语句 45
2.2.2 必须遵守的规则 48
2.2.3 SQL表达式和运算符 52
2.2.4 空值的概念 61
2.3 认证小结 66
2.4 本章知识点回顾 66
2.5 本章测试题 67
2.5.1 自测题 67
2.5.2 实验题 69
2.5.3 自测题答案 70
2.5.4 实验题答案 71
第3章 限定和排序数据 75
3.1 限制查询检索的行 76
3.1.1 WHERE子句 76
3.1.2 比较运算符 82
3.1.3 布尔运算符 92
3.1.4 优先规则 97
3.2 排序查询所检索的行 100
3.3 和符号(&)替换 105
3.3.1 替换变量 105
3.3.2 定义和验证 110
3.4 认证小结 115
3.5 本章知识点回顾 115
3.6 本章测试题 116
3.6.1 自测题 116
3.6.2 实验题 118
3.6.3 自测题答案 118
3.6.4 实验题答案 119
第4章 单行函数 121
4.1 描述SQL中可用的不同类型的函数 122
4.1.1 定义函数 122
4.1.2 函数类型 124
4.2 在SELECT语句中使用字符、数字和日期函数 126
4.2.1 使用字符大小写转换函数 126
4.2.2 使用字符操作函数 131
4.2.3 使用数字函数 140
4.2.4 使用日期 144
4.2.5 使用日期函数 147
4.3 认证小结 155
4.4 本章知识点回顾 155
4.5 本章测试题 156
4.5.1 自测题 156
4.5.2 实验题 157
4.5.3 自测题答案 157
4.5.4 实验题答案 158
第5章 使用转换函数和条件表达式 161
5.1 SQL中可用的各种类型的转换函数介绍 162
5.2 使用TO_CHAR、TO_NUMBER和TO_DATE转换函数 164
5.3 在SELECT语句中应用条件表达式 174
5.3.1 嵌套函数 174
5.3.2 一般函数 175
5.3.3 条件函数 181
5.4 认证小结 186
5.5 本章知识点回顾 187
5.6 本章测试题 188
5.6.1 自测题 188
5.6.2 实验题 190
5.6.3 自测题答案 190
5.6.4 实验题答案 191
第6章 使用分组函数报告聚合数据 193
6.1 分组函数介绍 194
6.1.1 分组函数的定义 194
6.1.2 分组函数的类型和语法 195
6.2 确定可用的分组函数 197
6.2.1 使用分组函数 197
6.2.2 嵌套的分组函数 202
6.3 使用GROUP BY子句分组数据 203
6.3.1 创建数据组 204
6.3.2 GROUP BY子句 205
6.3.3 按多列分组 206
6.4 使用HAVING子句包含或者排除分组行 209
6.4.1 限制分组结果 209
6.4.2 HAVING子句 210
6.5 认证小结 213
6.6 本章知识点回顾 213
6.7 本章测试题 214
6.7.1 自测题 214
6.7.2 实验题 216
6.7.3 自测题答案 216
6.7.4 实验题答案 218
第7章 显示多个表中的数据 219
7.1 使用同等连接和非同等连接编写SELECT语句访问多个表的数据 220
7.1.1 连接的类型 220
7.1.2 使用ANSI SQL语法连接表 224
7.1.3 限定模糊的列名 225
7.1.4 NATURAL JOIN子句 226
7.1.5 JOIN USING子句 229
7.1.6 JOIN ON子句 230
7.1.7 N路连接和其他连接条件 232
7.1.8 非同等连接 234
7.2 使用自连接将表连接到自身 235
7.3 使用外连接查看不满足连接条件的数据 238
7.3.1 内连接和外连接 238
7.3.2 左外连接 238
7.3.3 右外连接 240
7.3.4 全外连接 241
7.4 生成两个或多个表的笛卡尔乘积 243
7.5 认证小结 246
7.6 本章知识点回顾 246
7.7 本章测试题 247
7.7.1 自测题 247
7.7.2 实验题 250
7.7.3 自测题答案 250
7.7.4 实验题答案 251
第8章 使用子查询解决问题 253
8.1 定义子查询 254
8.2 描述子查询能够解决的问题的类型 256
8.2.1 将子查询的结果集用于比较 256
8.2.2 星型转换 257
8.2.3 生成执行SELECT语句的表 259
8.2.4 生成投影值 259
8.2.5 生成传递给DML语句的行 259
8.3 列举子查询的类型 261
8.3.1 单行和多行子查询 261
8.3.2 关联子查询 262
8.4 编写单行和多行子查询 265
8.5 认证小结 269
8.6 本章知识点回顾 269
8.7 本章测试题 269
8.7.1 自测题 269
8.7.2 实验题 273
8.7.3 自测题答案 273
8.7.4 实验题答案 274
第9章 使用集合运算符 277
9.1 描述集合运算符 278
9.1.1 集合和维恩图 278
9.1.2 集合运算符的一般原则 279
9.2 使用集合运算符将多个查询合并为一个查询 281
9.2.1 UNION ALL运算符 281
9.2.2 UNION运算符 282
9.2.3 INTERSECT运算符 283
9.2.4 MINUS运算符 284
9.2.5 更复杂的示例 284
9.3 控制返回行的顺序 288
9.4 认证小结 291
9.5 本章知识点回顾 291
9.6 本章测试题 291
9.6.1 自测题 291
9.6.2 实验题 293
9.6.3 自测题答案 294
9.6.4 实验题答案 294
第10章 操作数据 297
10.1 描述各种DML语句 298
10.1.1 INSERT 298
10.1.2 UPDATE 299
10.1.3 DELETE 300
10.1.4 MERGE 300
10.1.5 TRUNCATE 301
10.1.6 DML语句失败 301
10.2 在表中插入行 304
10.3 更新表中的行 310
10.4 从表中删除行 313
10.4.1 使用DELETE删除行 313
10.4.2 使用TRUNCATE删除行 316
10.4.3 MERGE 316
10.5 控制事务 317
10.5.1 数据库事务 317
10.5.2 事务控制语句 320
10.6 认证小结 325
10.7 本章知识点回顾 325
10.8 本章测试题 326
10.8.1 自测题 326
10.8.2 实验题 329
10.8.3 自测题答案 330
10.8.4 实验题答案 331
第11章 使用DDL语句创建和管理表 333
11.1 分类主要的数据库对象 334
11.1.1 对象类型 334
11.1.2 用户和模式 336
11.1.3 命名模式对象 336
11.1.4 对象名称空间 337
11.2 回顾表结构 338
11.3 列举列可用的数据类型 339
11.4 创建简单的表 343
11.4.1 使用列规范创建表 343
11.4.2 从子查询创建表 344
11.4.3 在创建表后变更表定义 345
11.4.4 删除和截断表 346
11.5 讨论在创建表时如何创建约束 348
11.5.1 约束的类型 349
11.5.2 定义约束 351
11.6 认证小结 354
11.7 本章知识点回顾 354
11.8 本章测试题 355
11.8.1 自测题 355
11.8.2 实验题 357
11.8.3 自测题答案 357
11.8.4 实验题答案 358
术语表 361