Oracle 11g PL/SQL编程技术与开发实用教程 本书特色
本书以通俗易懂的语言,丰富多彩的实例,详细介绍了使用Oracle
11g进行数据管理的各方面技术。全书共分12章,包括Oracle
11g基础介绍,SQL语言、函数,SQL单表查询、子查询与集合操作,SQL连接查询,SQL*Plus命令,PL/SQL编程,过程、函数、触发器和包,Oracle
11g的闪回技术,人力资源管理系统等。
本书为Oracle数据库应用开发人员提供了SQL使用指南和PL/SQL编程技术。通过本书读者不仅可以掌握SQL和PL/SQL的基础知识,而且还可以掌握Oracle
11g SQL和PL/SQL的许多高级特征。
本书可作为高等院校计算机相关专业或Oracle 11g培训班的教材,也可作为各类高级数据库编程人员的参考书。本书的编写既考虑了SQL和PL/SQL的初学者,同时也兼顾到了有经验的PL/SQL编程人员。
Oracle 11g PL/SQL编程技术与开发实用教程 内容简介
Oracle 11g PL/SQL编程技术与开发实用教程对Oracle软件的安装、SQL函数、PL/SQL程序设计以及Oracle数据库的体系结构、服务器结构、Oracle数据库文件、后台进程进行了全面的讲解。在随书附带的网络资源中,提供了本书范例程序的全部源代码。本书适用于Oracle数据库管理和开发的初学者,同时也适用于有一定基础的管理和开发人员使用。凡是想学习SQL语句或利用PL/SQL提高Oracle数据库管理和开发能力的人士,都可以从本书获得借鉴。
Oracle 11g PL/SQL编程技术与开发实用教程 目录
第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简介与Oracle 11g基本
数据类型... 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