第一篇 Oracle管理配置 23
第1章 Oracle安装配置(教学视频:10分钟) 23
1.1 Oracle简介 23
1.1.1 数据库术语 23
1.1.2 主流数据库简介 24
1.1.3 Oracle数据库的特点 24
1.2 安装Oracle数据库 25
1.2.1 Oracle数据库的版本变迁及安装环境 25
1.2.2 安装过程 26
1.2.3 安装中需要注意的问题 27
1.3 本章小结 28
1.4 习题 28
第2章 Oracle常用工具(教学视频:7分钟) 29
2.1 Net Configuration Assistant(网络配置助手) 29
2.1.1 监听程序配置 29
2.1.2 命名方法配置 31
2.1.3 本地Net服务名配置 32
2.2 Net Manager(网络管理员) 34
2.3 本章实例 36
2.4 本章小结 38
2.5 习题 38
第3章 SQL Plus和PL/SQL(教学视频:11分钟) 39
3.1 SQL Plus与PL/SQL简介 39
3.2 使用SQL Plus 40
3.2.1 登录SQL Plus 40
3.2.2 SQL Plus输出结果的格式化 41
3.2.3 SQL Plus小结 46
3.3 PL/SQL 46
3.3.1 PL/SQL常用开发工具 46
3.3.2 开发一个简单的PL/SQL程序 48
3.4 本章实例 49
3.5 本章小结 50
3.6 习题 50
第二篇 Oracle数据库对象 51
第4章 Oralce数据库(教学视频:15分钟) 51
4.1 创建Oracle数据库 51
4.2 Oracle数据库的相关术语 52
4.2.1 数据库 53
4.2.2 数据库实例和SID 53
4.2.3 ORACLE_SID 54
4.3 Oracle数据库的备份与恢复 55
4.3.1 逻辑备份/恢复(导出/导入) 55
4.3.2 物理备份/恢复 56
4.3.3 利用PL/SQL Developer备份数据库 60
4.4 本章实例 61
4.5 本章小结 61
4.6 习题 62
第5章 Oracle数据表对象(教学视频:42分钟) 63
5.1 Oracle表空间 63
5.1.1 Oracle表空间简介 63
5.1.2 创建Oracle表空间 64
5.1.3 查看表空间 66
5.1.4 修改数据库默认表空间 67
5.1.5 修改表空间名称 68
5.1.6 删除表空间 69
5.2 创建Oracle数据表 70
5.2.1 利用工具创建数据表 70
5.2.2 利用工具查看数据表 71
5.2.3 利用命令创建数据表 72
5.2.4 利用命令查看表结构 72
5.3 修改Oracle数据表结构 73
5.3.1 利用工具修改数据表结构 73
5.3.2 利用命令修改数据表结构 74
5.4 删除数据表 75
5.4.1 利用工具删除数据表 76
5.4.2 利用SQL语句删除数据表 76
5.5 备份/恢复数据表 76
5.5.1 利用工具备份/恢复数据表 77
5.5.2 利用命令备份/恢复数据表 82
5.6 临时表 83
5.6.1 临时表简介 83
5.6.2 会话级临时表 84
5.6.3 事务级临时表 85
5.6.4 查看临时表在数据库中的信息 86
5.6.5 临时表的应用场景 86
5.7 特殊的表dual 87
5.7.1 分析dual表 87
5.7.2 dual表的应用场景 87
5.7.3 修改dual表对查询结果的影响 88
5.8 本章实例 89
5.9 本章小结 90
5.10 习题 90
第6章 约束(教学视频:43分钟) 91
6.1 主键约束 91
6.1.1 主键简介 91
6.1.2 创建主键约束 92
6.1.3 修改表的主键约束 94
6.1.4 主键应用场景 96
6.2 外键约束 97
6.2.1 外键简介 97
6.2.2 创建外键约束 97
6.2.3 级联更新与级联删除 100
6.2.4 修改外键属性 102
6.2.5 外键使用 104
6.3 唯一性约束 105
6.3.1 唯一性约束简介 105
6.3.2 创建唯一性约束 105
6.3.3 修改唯一性约束 107
6.3.4 唯一性约束的使用 108
6.4 检查约束 108
6.4.1 检查约束简介 108
6.4.2 创建检查约束 108
6.4.3 修改检查约束 110
6.4.4 检查约束的使用 111
6.5 默认值约束 111
6.5.1 默认值约束简介 112
6.5.2 创建默认值约束 112
6.5.3 修改默认值约束 113
6.6 本章实例 115
6.7 本章小结 116
6.8 习题 116
第7章 视图(教学视频:50分钟) 117
7.1 关系视图 117
7.1.1 建立关系视图 117
7.1.2 修改/删除视图 118
7.1.3 联接视图 120
7.1.4 编译视图 122
7.1.5 使用force选项强制创建视图 124
7.1.6 利用视图更新数据表 125
7.1.7 with check option选项 126
7.1.8 关系视图小结 128
7.2 内嵌视图 128
7.2.1 内嵌视图简介 128
7.2.2 内嵌视图的使用 128
7.2.3 内嵌视图小结 130
7.3 对象视图 131
7.3.1 对象视图简介 131
7.3.2 对象视图简介 131
7.4 物化视图 133
7.4.1 物化视图简介 133
7.4.2 物化视图的使用 133
7.4.3 物化视图的数据加载 135
7.4.4 物化视图的数据更新 135
7.4.5 查询重写 136
7.5 本章小结 136
7.6 本章实例 137
7.7 习题 137
第8章 函数与存储过程(教学视频:48分钟) 138
8.1 函数 138
8.1.1 函数简介 138
8.1.2 创建函数 139
8.1.3 函数中的括号 140
8.1.4 函数的参数 141
8.1.5 函数的确定性 142
8.1.6 典型函数举例 143
8.2 存储过程 144
8.2.1 存储过程简介 144
8.2.2 创建存储过程 144
8.2.3 存储过程的参数——IN参数 146
8.2.4 存储过程的参数——OUT参数 147
8.2.5 存储过程的参数——IN OUT参数 149
8.2.6 存储过程的参数——参数顺序 149
8.2.7 存储过程的参数——参数的默认值 152
8.2.8 存储过程的参数——参数顺序总结 153
8.3 程序包 153
8.3.1 规范 153
8.3.2 主体 155
8.3.3 调用程序包中的函数/存储过程 157
8.3.4 程序包中的变量 158
8.4 本章实例 159
8.5 本章小结 161
8.6 习题 161
第9章 游标(教学视频:36分钟) 162
9.1 游标简介 162
9.2 显式游标 162
9.2.1 声明游标 162
9.2.2 使用游标 164
9.3 隐式游标 166
9.3.1 sql隐式游标 166
9.3.2 cursor for游标 168
9.3.3 隐式游标和显式游标 169
9.4 游标属性 169
9.5 动态游标 171
9.5.1 强类型动态游标 171
9.5.2 弱类型动态游标 173
9.5.3 比较两种动态游标 176
9.6 本章实例 176
9.7 本章小结 176
9.8 习题 177
第10章 触发器(教学视频:58分钟) 178
10.1 触发器简介 178
10.2 创建和使用触发器 178
10.2.1 创建触发器 179
10.2.2 触发器的作用级别 180
10.2.3 在多个事件上定义触发器 181
10.2.4 为同一事件定义多个触发器 182
10.2.5 触发器限制 183
10.3 语句触发器 184
10.3.1 创建语句触发器 184
10.3.2 触发器谓词 186
10.3.3 触发时机 187
10.3.4 触发器级联 188
10.4 行触发器 189
10.4.1 行触发器与引用 189
10.4.2 触发时机与引用 191
10.4.3 触发时机与瞬态 193
10.5 instead of触发器 195
10.5.1 创建和使用instead of触发器 195
10.5.2 instead of触发器与引用 198
10.6 系统事件与用户事件触发器 198
10.6.1 系统事件触发器 198
10.6.2 用户事件触发器 200
10.7 启用和禁用触发器 201
10.7.1 启用和禁用触发器的场景 201
10.7.2 禁用触发器 202
10.7.3 启用触发器 202
10.7.4 触发器信息 203
10.8 本章实例 203
10.9 本章小结 205
10.10 习题 205
第11章 序列(教学视频:28分钟) 206
11.1 创建和使用序列 206
11.1.1 创建序列 206
11.1.2 使用序列 207
11.1.3 序列初始值start with 208
11.2 修改序列属性 209
11.2.1 修改minvalue和maxvalue 209
11.2.2 修改increment by 210
11.2.3 修改cycle 211
11.2.4 修改cache 212
11.3 本章实例 213
11.4 本章小结 214
11.5 习题 214
第12章 用户角色与权限控制(教学视频:45分钟) 215
12.1 用户 215
12.1.1 Oracle中的用户 215
12.1.2 创建新用户 216
12.1.3 用户与模式(Schema) 216
12.1.4 系统用户sys和system 217
12.2 权限 218
12.2.1 系统权限 218
12.2.2 对象权限 221
12.3 角色 225
12.3.1 创建和使用角色 225
12.3.2 继承角色 226
12.3.3 禁用和启用角色 228
12.4 本章实例 229
12.5 本章小结 230
12.6 习题 230
第三篇 Oracle中的SQL 231
第13章 Oracle数据类型(教学视频:21分钟) 231
13.1 Oracle中的数据类型 231
13.1.1 字符型 231
13.1.2 数值型 232
13.1.3 日期时间型 232
13.1.4 lob类型 233
13.2 Oracle中的特殊数据 233
13.2.1 rowid 233
13.2.2 null与空字符串 234
13.2.3 单引号与双引号 235
13.3 本章实例 237
13.4 本章小结 238
13.5 习题 239
第14章 Oracle中的函数与表达式(教学视频:111分钟) 240
14.1 Oracle中的字符串函数 240
14.1.1 lpad()函数 240
14.1.2 rpad()函数 241
14.1.3 lower()函数——返回小写字符串 241
14.1.4 upper()函数——返回大写字符串 241
14.1.5 initcap()函数——单词首字母大写 242
14.1.6 length()函数——返回字符串长度 242
14.1.7 substr()函数——截取字符串 243
14.1.8 instr()函数——获得字符串出现的位置 243
14.1.9 ltrim()函数——删除字符串首部空格 244
14.1.10 rtrim()函数——删除字符串尾部空格 244
14.1.11 trim()函数——删除字符串首尾空格 245
14.1.12 to_char()函数——将其他类型转换为字符类型 245
14.1.13 chr()函数——将ascii码转换为字符串 247
14.1.14 translate()函数——替换字符 247
14.2 Oracle中的数学函数 248
14.2.1 abs()函数——返回数字的绝对值 248
14.2.2 round()函数——返回数字的“四舍五入”值 248
14.2.3 ceil()函数——向上取整 249
14.2.4 floor()函数——向下取整 249
14.2.5 mod()函数——取模操作 250
14.2.6 sign()函数——返回数字的正负性 250
14.2.7 sqrt()函数——返回数字的平方根 251
14.2.8 power()函数——乘方运算 251
14.2.9 trunc()函数——截取数字 251
14.2.10 vsize()函数——返回数据的存储空间 252
14.2.11 to_number()函数——将字符串转换为数值类型 252
14.3 Oracle中的日期函数 252
14.3.1 to_date()函数——将字符串转换为日期型 252
14.3.2 add_months()函数——为日期加上特定月份 253
14.3.3 last_day()函数——返回特定日期所在月的最后一天 253
14.3.4 months_between()函数——返回两个日期所差的月数 253
14.3.5 current_date()函数——返回当前会话时区的当前日期 254
14.3.6 current_timestamp()函数——返回当前会话时区的当前时间戳 254
14.3.7 extract()函数——返回日期的某个域 254
14.4 Oracle中的聚合函数 255
14.4.1 max()函数——求最大值 256
14.4.2 min()函数——求最小值 257
14.4.3 avg()函数——求平均值 257
14.4.4 sum()函数——求和 258
14.4.5 count()函数——获得记录数 258
14.5 Oracle中的其他函数 259
14.5.1 decode()函数——多值判断 259
14.5.2 nvl()函数——处理空值 260
14.5.3 cast()函数——强制转换数据类型 261
14.6 Oracle中的运算表达式 263
14.6.1 数学运算 263
14.6.2 逻辑运算 264
14.6.3 位运算 265
14.7 Oracle中的特殊判式 266
14.7.1 between——范围测试 266
14.7.2 in——集合成员测试 267
14.7.3 like——模式匹配 267
14.7.4 is null——空值判断 268
14.7.5 exists——存在性判断 268
14.7.6 all,some,any——数量判断 269
14.8 Oracle高级函数——分析函数与窗口函数 270
14.8.1 排名 270
14.8.2 分区窗口 272
14.8.3 窗口子句 273
14.8.4 主要的分析函数 277
14.9 本章实例 280
14.10 本章小结 281
14.11 习题 281
第15章 Oracle中的控制语句(教学视频:16分钟) 282
15.1 Oracle中的条件语句 282
15.1.1 利用if else进行条件判断 282
15.1.2 利用case when进行分支判断 283
15.2 Oracle中的循环语句 285