第1章 案例概述及分析 1
1.1系统概述 1
1.1.1业务流程及需求 1
1.1.2新系统功能要求 1
1.2系统处理流程与设计 4
1.2.1分配教学任务 4
1.2.2选课注册 4
1.2.3成绩处理 4
1.2.4成绩统计分析 5
1.2.5学生查询成绩 5
1.3数据库逻辑结构设计 5
1.3.1编码设计 5
1.3.2数据库逻辑模型 8
1.4数据库物理设计 12
1.5数据库实施 14
作业题 15
第2章 Oracle软件系统的安装 16
2.1安装Oracle Database 11g R2 16
2.1.1硬件需求 16
2.1.2 Windows操作系统 17
2.1.3 Oracle Database软件 17
2.1.4获得Oracle软件的途径 17
2.1.5安装Oracle系统 18
2.1.6软件安装后的系统环境 24
2.2选择平台 25
2.2.1启动/关闭服务 25
2.2.2环境变量 25
2.2.3操作系统组 25
2.2.4 OUI账户 26
2.3 Oracle软件的卸载 26
2.3.1卸载准备 26
2.3.2卸载方法 26
2.4安装Oracle Database 12c R1 27
作业题 35
第3章 创建数据库 36
3.1数据库规划 36
3.1.1估算数据存储空间 36
3.1.2物理文件设置 37
3.2用DBCA创建数据库 39
3.2.1安装过程 39
3.2.2数据库创建后的服务 53
3.2.3数据库目录结构 53
3.3 Oracle数据库逻辑结构 57
3.3.1 Oracle数据库体系结构 57
3.3.2逻辑存储结构 57
3.4 Oracle数据库物理结构 64
3.4.1参数文件 65
3.4.2控制文件 66
3.4.3重做日志文件 66
3.4.4数据文件 67
3.4.5临时文件 68
3.4.6口令文件 68
3.4.7二进制文件 68
3.5 SQL与数据库交互接口 69
3.5.1 SQL*Plus连接数据库 69
3.5.2特殊启动格式 71
3.5.3 SQL*Plus常用命令 71
3.5.4 PL/SQL常用开发工具 75
3.6删除数据库 75
3.6.1用SQL语句手工删除数据库 75
3.6.2使用DBCA删除数据库 76
3.7数据库与服务器 77
作业题 78
第4章 创建表空间 80
4.1表空间规划及分配 80
4.2创建表空间 82
4.2.1创建表空间Tbs_main 82
4.2.2创建表空间Tbs_bio_foo 87
4.2.3创建表空间tbs_infor_mati 89
4.2.4创建表空间tbs_art_fash_busi 90
4.2.5创建表空间tbs_teach_std 90
4.2.6创建索引表空间tbs_index 91
4.2.7创建临时表空间tbs_temp 91
4.3永久表空间管理 94
4.3.1创建永久表空间语法 94
4.3.2永久表空间的修改 97
4.3.3删除永久表空间 99
4.4撤销表空间管理 100
4.4.1创建撤销表空间的语法 100
4.4.2创建撤销表空间tbs_undo 100
4.4.3删除撤销表空间 103
4.5临时表空间管理 103
4.5.1创建临时表空间格式 103
4.5.2创建临时表空间temp_new 103
4.5.3查看表空间 103
4.5.4查看临时表空间的数据文件 104
4.5.5添加数据文件 104
4.5.6调整临时文件大小 104
4.5.7将临时表空间文件脱机 104
4.5.8将临时表空间联机 104
4.5.9删除临时文件 105
4.5.10更改默认临时表空间 105
作业题 105
第5章 数据库用户及安全 106
5.1用户权限规划 106
5.2创建数据库用户及授权 108
5.2.1创建用户staffuser 109
5.2.2创建用户teauser 113
5.2.3创建用户stduser 114
5.2.4创建用户dbdatauser 115
5.2.5创建用户dbsysuser 115
5.2.6查看角色及系统权限 116
5.3用户管理 117
5.3.1创建用户格式 118
5.3.2创建数据库验证的用户 119
5.3.3修改数据库用户属性 120
5.3.4创建外部验证数据库用户 122
5.4权限及角色 126
5.4.1权限 127
5.4.2角色 131
5.4.3特殊账户 135
5.4.4几个系统权限 136
5.5概要文件PROFILE 137
5.5.1创建概要文件 138
5.5.2为用户指定概要文件 143
5.5.3用概要文件管理用户口令 144
5.5.4管理用户口令的复杂性 150
作业题 151
第6章 表与视图 153
6.1数据表及视图规划 153
6.1.1数据表规划 153
6.1.2视图规划 155
6.2创建表 157
6.2.1用OEM Database Control创建表 157
6.2.2用SQL语句创建表 163
6.3创建应用视图 179
6.3.1授予用户对象权限 179
6.3.2创建用户视图 182
6.4管理表 186
6.4.1修改表 186
6.4.2删除表 191
6.4.3操纵数据 191
6.5 Excel文件与数据库互传 204
6.5.1用外部表导入Excel数据 204
6.5.2用SQL*Loader导入批量数据 208
6.5.3导出数据库数据到Excel 210
6.6数据查询 214
6.6.1查询表或视图中所有列和行 214
6.6.2 SAMPLE采样子句的查询 214
6.6.3分组查询 215
6.6.4使用函数查询 216
6.6.5从指定的分区查询 216
6.6.6 Oracle内置函数 216
作业题 221
第7章 存储过程 222
7.1用户数据使用需求规划 222
7.2创建存储过程 223
7.2.1创建存储过程p_query_std_inf 223
7.2.2创建存储过程p_upd_std_inf 225
7.2.3创建存储过程p_ins_upd_course_grade 228
7.2.4创建存储过程p_cancel_reg_course 230
7.3存储过程的结构与调用 231
7.3.1存储过程结构 231
7.3.2存储过程的调用 235
7.3.3存储过程的优缺点 238
7.4 PL/SQL块 239
7.5游标 247
7.5.1显式游标的使用 248
7.5.2 FOR循环与游标 249
7.5.3隐式游标 250
7.5.4游标属性 251
7.5.5用游标更新和删除数据 252
7.5.6游标变量 253
7.6异常处理 257
7.6.1预定义的异常处理 257
7.6.2内部定义的异常处理 259
7.6.3用户自定义异常处理 260
7.6.4 RAISE_APPLICATION_ERROR 261
作业题 262
第8章 函数 263
8.1用户数据使用需求规划 263
8.2创建函数 263
8.2.1创建函数fun_query_std_gra 263
8.2.2创建函数fun_std_avg_gra 264
8.3函数结构与定义 265
8.3.1函数的定义 265
8.3.2函数元数据的查询 268
8.4函数的使用 268
8.4.1函数使用场合 268
8.4.2使用函数的时机 269
8.4.3使用函数的好处 269
作业题 269
第9章 触发器 270
9.1用户功能需求规划 270
9.2创建触发器 270
9.2.1创建触发器tri_startup_db 270
9.2.2创建触发器tri_shutdown_db 272
9.2.3创建触发器tri_login_user 272
9.2.4创建触发器tri_restrict_upd_time 273
9.2.5创建触发器tri_logon_scheme 274
9.2.6创建触发器tri_aud_sche_operation 274
9.3触发器类型及结构 275
9.3.1触发器类型 275
9.3.2触发器结构 276
9.3.3触发器体系结构 276
9.3.4相关系统权限 278
9.3.5触发器的用途 278
9.4系统触发器 278
9.4.1系统触发器定义 278
9.4.2系统事件及属性函数 279
9.4.3数据库触发器 281
9.4.4模式触发器 283
9.5 DML触发器 288
9.5.1 DML触发器的定义 288
9.5.2编写DML触发器的要素 290
9.5.3触发顺序及条件谓词 290
9.5.4触发时机适用情形 291
9.5.5 DML触发器的限制 292
9.5.6语句级触发器 292
9.5.7行级触发器 294
9.5.8管理触发器 297
9.6复合触发器 300
9.6.1复合触发器定义 300
9.6.2复合触发器的限制 301
9.6.3创建复合触发器 302
9.7替代触发器 303
作业题 305
第10章 包 307
10.1用户对系统的需求 307
10.2创建包 307
10.2.1创建包pack_get_infor 307
10.2.2测试包 309
10.3包的定义 309
10.3.1创建包 310
10.3.2包的管理 312
10.3.3创建包的步骤 313
作业题 313
第11章 客户端配置与网络连接 314
11.1客户端安装与配置 314
11.1.1 Oracle Database Client 316
11.1.2 ODAC客户端驱动程序 323
11.1.3 Oracle Instant Client 331
11.1.4 JDBC/UCP 335
11.1.5 ODBC 337
11.2 Oracle Database 9i客户端安装配置 340
11.3 Visual Studio.NET连接配置 342
11.4网络连接与设置 346
11.4.1 Oracle Net配置文件 346
11.4.2命名解析方法与配置文件 350
11.4.3连接过程 353
11.4.4监听器管理 354
作业题 364
第12章 数据库实例 366
12.1启动/关闭数据库实例的方法 366
12.1.1在SQL*Plus中启动/关闭实例 366
12.1.2用ORADIM启动/关闭实例 368
12.1.3用DGMGRL启动/关闭实例 370
12.1.4用RMAN启动/关闭实例 372
12.1.5用NET命令启动/关闭实例 373
12.1.6用Administration Assistant for Windows启动/关闭实例 373
12.1.7从服务控制面板启动/关闭实例 374
12.1.8用Oracle Database Control启动/关闭实例 374
12.2数据库实例 376
12.2.1实例的概念 376
12.2.2数据库与实例的关系 379
12.3数据库启动过程 381
12.3.1 STARTUP FORCE 382
12.3.2 STARTUP RESTRICT 382
12.3.3 STARTUP NOMOUNT 383
12.3.4 STARTUP MOUNT 384
12.3.5 STARTUP OPEN 384
12.3.6 STARTUP PFILE 385
12.3.7 STARTUP EXCLUSIVE 386
12.3.8 STARTUP READ ONLY 387
12.3.9 STARTUP RECOVER 387
12.4数据库关闭过程 387
12.4.1 SHUTDOWN NORMAL 388
12.4.2 SHUTDOWN IMMEDIATE 388
12.4.3 SHUTDOWN TRANSACTIONAL 389
12.4.4 SHUTDOWN ABORT 390
作业题 390
第13章 Oracle企业管理器 392
13.1 Oracle企业管理器结构 392
13.1.1企业管理器架构 392
13.1.2企业管理器模式 394
13.2 Oracle 9i企业管理器 394
13.2.1创建资料档案库 395
13.2.2启动本地OMS 398
13.2.3停止本地OMS 399
13.2.4检查OMS状态 400
13.3 Oracle 11g企业管理器 400
13.3.1 Grid Control 400
13.3.2 Database Control 402
13.3.3配置OEM常用命令 408
作业题 409