第1章 Oracle基础介绍 1
1.1 数据库概述 2
1.1.1 数据库的组成 2
1.1.2 数据库实施 3
1.2 Oracle 11g基本简介 3
1.2.1 Oracle版本号的含义 4
1.2.2 Oracle 11g的新特性 4
1.2.3 在Windows下安装Oracle 11g的配置要求 5
上机实训:在Windows环境下安装Oracle 11g 5
本章小结 8
习题 9
第2章 SQL语言、函数基本操作 11
2.1 SQL简介与Oracle11g基本数据类型 12
2.1.1 SQL语言的编写规则 12
2.1.2 Oracle 11g基本数据类型 13
2.2 数字函数 15
2.2.1 数字函数概述 15
2.2.2 数字函数示例 16
2.3 字符函数 22
2.3.1 字符函数概述 22
2.3.2 字符函数示例 23
2.4 日期时间函数 27
2.4.1 日期时间函数概述 27
2.4.2 日期时间函数示例 27
2.5 转换函数 32
2.5.1 转换函数概述 32
2.5.2 转换函数示例 33
上机实训:输出字符串ASCII值和字符 36
本章小结 37
习题 37
第3章 SQL单表查询 39
3.1 条件查询 40
3.1.1 单一条件查询 41
3.1.2 复合条件查询 45
3.2 记录排序 49
3.2.1 按单一列排序 50
3.2.2 按多列排序 52
3.3 分组查询 54
3.3.1 列函数及其应用 54
3.3.2 GROUP BY子句 56
3.3.3 HAVING子句 58
上机实训:对PAY_TABLE表进行编辑操作 58
本章小结 60
习题 60
第4章 SQL子查询与集合操作 63
4.1 子查询 64
4.1.1 单行子查询 65
4.1.2 多行子查询 67
4.1.3 多列子查询 69
4.1.4 相关子查询 70
4.1.5 嵌套子查询 72
4.2 集合操作 72
4.2.1 使用集合操作符 73
4.2.2 复杂集合操作 78
上机实训:打印符合要求的记录 82
本章小结 83
习题 83
第5章 SQL连接查询 85
5.1 内连接查询 86
5.1.1 简单内连接 87
5.1.2 复杂内连接 88
5.2 外连接查询 90
5.2.1 左外连接 91
5.2.2 右外连接 92
5.2.3 全外连接 93
5.3 其他特殊连接 95
5.3.1 交叉连接 95
5.3.2 自然连接 97
上机实训:在生成的PROJECTS表中追加记录 99
本章小结 99
习题 100
第6章 数据控制语言与数据定义语言 101
6.1 数据控制语言 102
6.1.1 数据库权限 102
6.1.2 权限控制 105
6.2 表 110
6.2.1 建立表 110
6.2.2 获得表的相关信息 115
6.2.3 修改表定义 116
6.2.4 修改表名 123
6.2.5 删除表 123
6.3 索引 124
6.3.1 各种类型索引的比较和选择 124
6.3.2 建立索引 125
6.3.3 获得索引信息 125
6.3.4 修改索引名字 126
6.3.5 删除索引 127
6.3.6 监视索引的空间使用 127
6.3.7 查看索引信息 127
6.4 视图 128
6.4.1 建立视图 129
6.4.2 使用视图 130
6.4.3 获得视图定义信息 133
6.4.4 修改视图 135
6.4.5 删除视图 135
6.5.6 替换视图 135
上机实训:创建编辑my_emp数据表 136
本章小结 137
习题 137
第7章 数据操纵语言与事务处理 139
7.1 数据操纵语言 140
7.1.1 插入数据 140
7.1.2 更新数据 141
7.1.3 删除数据 143
7.1.4 数据库完整性 144
7.1.5 含有子查询的DML语句 146
7.2 数据事务处理 148
7.2.1 显式处理事务 149
7.2.2 隐式处理事务 151
7.2.3 特殊事务 151
上机实训:编写在PAY TABLE表中插入记录的过程 152
本章小结 153
习题 153
第8章 SQL*Plus基础简介 155
8.1 SQL*Plus语言基础 156
8.1.1 SQL*Plus的功能与编写规则 156
8.1.2 启动SQL*Plus连接数据库 157
8.2 使用SQL*Plus的编辑功能 159
8.2.1 编辑命令 159
8.2.2 保存命令 162
8.2.3 加入注释 163
8.2.4 运行命令 165
8.2.5 编写交互命令 166
8.2.6 使用绑定变量 173
8.2.7 跟踪语句 177
上机实训:打印出EMP表中各个工资级别的人数 182
本章小结 182
习题 183
第9章 PL/SQL编程基础 185
9.1 PL/SQL语言基础 186
9.1.1 PL/SQL块 186
9.1.2 PL/SQL基本语法要素 189
9.1.3 PL/SQL的开发和运行环境 192
9.1.4 运行PL/SQL程序 194
9.2 在PL/SQL中执行SQL语句 195
9.2.1 执行SELECT语句 195
9.2.2 执行DML语句 197
9.2.3 执行事务处理语句 203
9.3 PL/SQL程序控制结构 204
9.3.1 顺序结构 204
9.3.2 分支结构 204
9.3.3 循环结构 210
9.3.4 GOTO语句与NULL语句 213
上机实训:实现数据交换 215
本章小结 215
习题 216
第10章 PL/SQL记录集合应用 217
10.1 记录类型 218
10.1.1 定义记录 218
10.1.2 在SELECT语句中使用记录 220
10.1.3 在DML中使用记录 223
10.2 记录表类型 227
10.2.1 定义记录表 227
10.2.2 使用记录表 228
10.3 联合数组类型 230
10.3.1 定义联合数组 231
10.3.2 使用联合数组 231
10.4 嵌套表类型 233
10.4.1 定义嵌套表 233
10.4.2 使用嵌套表 234
10.5 变长数组类型 237
10.5.1 定义变长数组 238
10.5.2 使用变长数组类型 238
10.6 集合操作 241
10.6.1 集合属性与方法 242
10.6.2 使用集合操作符 250
上机实训:在myEMP表中修改员工工资 256
本章小结 257
习题 257
第11章 PL/SQL高级应用 259
11.1 子程序 260
11.1.1 过程 260
11.1.2 函数 262
11.2 包 263
11.2.1 定义包 264
11.2.2 包的管理 268
11.2.3 调用包 270
11.2.4 包中子程序的重载 273
11.3 触发器 277
11.3.1 触发器概述 277
11.3.2 DML触发器 277
11.3.3 INSTEAD OF触发器 280
11.3.4 系统事件触发器 281
11.4 PL/SQL游标 283
11.4.1 游标应用基础 283
11.4.2 游标FOR循环 285
上机实训:创建名为change_record的触发器 287
本章小结 288
习题 288
第12章 项目实践——人力资源管理系统 291
12.1 系统设计 292
12.1.1 需求分析 292
12.1.2 总体设计 292
12.1.3 功能模块设计 293
12.2 数据库设计与实现 294
12.2.1 数据库需求设计 294
12.2.2 数据逻辑结构设计 294
12.3 人力资源管理 298
12.3.1 部门信息管理 298
12.3.2 员工信息管理 311
12.4 考勤管理 325
12.4.1 考勤规则管理 325
12.4.2 假别管理 329
12.4.3 请假管理 332
12.5 系统管理 335
12.5.1 用户注册 335
12.5.2 用户详细资料显示 336
12.5.3 用户查询 339
12.5.4 用户列表显示 341
12.5.5 数据库操作类 341
本章小结 342
习题 343
参考文献 344