
Oracle数据库实用教程以当前流行的Oracle 10g作为平台,分别介绍Oracle教程的详细内容、Oracle实验指导和相关附录。Oracle教程部分比较系统地介绍了Oracle 10g(中文版)的主要功能,通过具体实验对讲解内容进行具体操作和编程训练;以完整的项目作为任务驱动,将项目进行分解贯穿在各章节中,做到理论联系实验实践,将知识进行整体整合,增加学生学习的积极性并使其将所学知识融会贯通,做到学有所用,学有所成。在每个章节后配有另外相关的实验,也是一个具体的生活实际项目分解,最后将该项目的解决方案和业务实现整合成具体的实践效果。同时以流行的开发工具java与.net平台为背景详细介绍了java/Oracle和ASP.NET/Oracle的应用方法。
编者根据在软件公司多年的数据库开发经验,整理出软件企业对数据库人才需求的标准,后到大学任教,从事数据库方面课程的讲授,至今已有10年左右的数据库教学经历。在教学过程中发现高校大型数据库方面的教材偏向理论,仅仅适合研究型学校,而不适合应用型高校的学生学习。因此想将企业经验融入到教材、引入课堂,经过多轮该课程的讲授,以及多名一线教师的共同参与,形成了一套适合应用型高校学生学习的资料,将其整理成教材。并将Oracle数据库实用教程整理成以项目为驱动,将完整的项目分解成各个部分贯穿整本书的各个章节中,做到理论联系实际,使学生学习Oracle数据库不再枯燥,而且有项目目标,可以增强动手能力。主编已经进行过项目教学,实践证明通过理论和实践相结合的讲授,学生能更快适应企业的要求,而且从事数据库研发应用的学生人数比例也逐渐增多。现在企业需要应用型人才量较大,面向这方面的人才培养已成为高校的主要特色之一。
本书从实际应用出发,深入浅出地介绍Oracle的基本概念和主要开发工具,较详细地介绍了开发应用程序的方法和技巧。对初学者和应用程序开发人员都有较好的帮助作用。因此,简练实用是本书的最大特点。本书可以作为大学与数据库开发有关的本、专科专业教材,也可以作为软件开发人员的实用参考书。通过本书的学习,可以使初学者较快地上升到开发应用软件的水平。
本书共分为两部分。第一部分包含9个项目和配套的10个实验,第二部分是附录和参考答案部分。项目分解1介绍了创建数据库的系统设计、登录项目数据库的方式等;项目分解2介绍了项目需求及表设计、详细介绍了个人理财项目的各个表的创建和实现;项目分解3介绍了数据库的具体解决策略,增加、修改、删除、查询记录等;项目分解4介绍了存储过程和触发器应用,实现具体的个人理财存储过程和触发器的具体应用;项目分解5介绍了用户管理、创建角色、管理用户等;项目分解6介绍了数据库备份和恢复,实现数据库的分离与添加;项目分解7介绍了表空间应用,表空间的基本概念以及创建、编辑、修改表空间;项目分解8介绍了扩展数据管理能力、可管理性等其他特性;项目分解9介绍了项目实现技术及整合,将前面的8个项目分解的内容进行整体整合,形成最终的个人理财项目以及配套实验的学生信息管理数据库项目。
本教材由唐友任主编;郭鑫、陈秀玲任副主编;梁玉凤、赵鑫、耿姝、车玉生参编。唐友编写了项目分解1、项目分解2、项目分解3、项目分解4、附录D;郭鑫编写了项目分解6、项目分解8、附录A;陈秀玲编写了项目分解7、项目分解9、附录B、附录C;梁玉凤编写了项目分解5;赵鑫、耿姝、车玉生编写参考答案部分。本教材编写还得到了哈尔滨德强商务学院、哈尔滨广厦学院、黑龙江职业学院、哈尔滨石油学院、黑龙江生物科技职业学院等院校有关领导的大力支持,在此深表谢意。全书在Oracle项目经理董万里高级工徎师的主审下完成。
由于编者水平有限,虽经努力,教材一定仍存有各种问题,恳请广大读者提出宝贵意见和建议,以便修订时加以完善。
编 者
2012年12月
第1部分 Oracle实用教程
项目分解1 创建数据库 2
1.1 实用数据库管理系统 2
1.2 登录项目数据库的方式 4
1.2.1 访问项目数据库主界面 4
1.2.2 C/S模式访问项目数据库 6
1.2.3 B/S模式访问项目数据库 6
1.3 配置项目数据库连接 8
1.4 启动项目数据库文件 11
习题 12
项目分解2 项目需求及表设计 14
2.1 个人理财项目需求分析 14
2.1.1 概述 14
2.1.2 任务/功能 14
2.1.3 性能 16
2.1.4 用户基本情况说明 16
2.2 实体表 16
2.3 实体数据类型 16
2.4 设计项目表 17
2.4.1 创建项目业务表 17
2.4.2 修改项目业务表 24
2.4.3 删除项目业务表 27
习题 27
实验1 创建学生信息管理项目表 28
项目分解3 数据库具体解决策略 33
3.1 记录生成策略 33
3.1.1 插入表记录 33
3.1.2 主键生成策略——序列 34
3.1.3 修改序列 37
3.1.4 删除序列 37
3.2 修改记录 38
3.3 删除记录 38
3.4 项目业务数据检索 39
3.4.1 选择行 42
3.4.2 查询对象 47
3.4.3 连接 47
3.4.4 汇总 49
3.4.5 排序 51
3.4.6 SELECT语句的UNION子句 52
3.5 应用视图 53
3.5.1 视图的概念 53
3.5.2 创建视图 53
3.5.3 更新视图 56
3.5.4 修改视图定义 57
3.5.5 删除视图 58
3.6 项目数据库优化策略—索引 59
3.6.1 索引的分类 59
3.6.2 索引的创建 60
3.6.3 索引的修改 64
3.6.4 索引的删除 65
习题 66
实验2 创建学生信息管理项目序列 67
实验3 学生信息管理项目数据对象操作 69
实验4 学生信息管理项目数据检索 71
实验5 数据库优化策略视图和索引 73
项目分解4 存储过程和触发器应用 76
4.1 项目数据库扩展编程—PL/SQL 76
4.2 PL/SQL语法 76
4.2.1 变量 76
4.2.2 数据类型 77
4.2.3 表达式 78
4.2.4 控制结构 78
4.3 数据库实现优化—存储过程 79
4.3.1 创建存储过程 79
4.3.2 修改存储过程 83
4.3.3 删除存储过程 84
4.3.4 使用存储过程 85
4.4 数据库实现优化——触发器 85
4.4.1 创建触发器 86
4.4.2 修改触发器 89
4.4.3 删除触发器 91
习题 91
实验6 数据库实现优化——存储过程 92
实验7 数据库实现优化——触发器 94
项目分解5 用户管理 96
5.1 设定项目管理权限 96
5.2 选择项目管理角色 97
5.2.1 创建角色 98
5.2.2 管理角色 103
5.3 管理项目用户 104
5.3.1 创建用户 104
5.3.2 修改用户 104
5.3.3 锁定及解除用户锁定 105
5.3.4 删除用户 105
习题 105
实验8 学生信息管理项目权限与角色 106
项目分解6 数据库备份和恢复 109
6.1 项目数据库备份 109
6.2 项目数据库恢复 115
习题 120
实验9 数据库的备份与恢复 120
项目分解7 表空间应用 122
7.1 表空间概念 122
7.2 创建表空间 122
7.3 Oracle表空间的作用 124
7.4 修改表空间 127
7.5 删除表空间 129
习题 130
项目分解8 其他特征 131
8.1 性能与扩展能力 131
8.2 可管理性 132
8.3 高可用性的加强 132
8.4 VPD支持更多的安全协议 133
8.5 商务智能/数据仓库和生物信息学 133
8.6 扩展数据管理能力 134
8.7 应用开发方面的加强 134
习题 135
项目分解9 项目实现技术及整合 136
9.1 数据引擎JDBC 136
9.2 通过JDBC-ODBC访问Oracle数据库 138
9.2.1 创建ODBC数据源 138
9.2.2 编写JSP测试程序 140
9.2.3 JDBC编程详解 142
9.3 使用JavaBean模式访问数据库 144
9.4 直接使用JDBC访问数据库 147
9.5 使用连接池访问数据库 149
9.5.1 连接池的工作原理 150
9.5.2 实例:在JSP中使用连接池访问数据库 151
9.6 .NET访问Oracle数据库 160
9.6.1 回顾ADO.NET 160
9.6.2 使用ADO.NET连接Oracle 161
9.6.3 在抽象工厂中加入Oracle 164
习题 167
实验10 JDBC实现学生信息管理项目数据库访问 169
第2部分 附录及参考答案
附录A 学生信息管理系统项目实现 176
A.1 结构及主要功能 176
A.1.1 学生信息管理系统的主要功能 176
A.1.2 系统的功能模块结构 176
A.2 数据库设计 177
A.2.1 创建数据库用户 177
A.2.2 数据库逻辑结构设计 177
A.2.3 创建表的脚本语言 179
A.3 数据库连接 181
A.3.1 创建数据源 181
A.3.2 数据库连接(在模块modulel.bas中) 182
A.4 系统的实现 182
A.4.1 主窗体的设计 182
A.4.2 登录窗体的设计 185
A.4.3 背景窗体的设计 187
A.4.4 班级管理窗体的设计 188
A.4.5 课程信息窗体的设计 193
A.4.6 用户信息管理窗体的设计 198
A.4.7 奖惩信息管理窗口的设计 199
A.4.8 成绩查询窗口的设计 201
A.4.9 学籍信息管理窗体的设计 203
A.4.10 个人信息查询窗口的设计 207
A.5 运行截图 211
附录B 安装Oracle 10g数据的步骤 216
B.1 安装Oracle 10g服务器 216
B.2 安装Oracle 10g客户端 220
B.3 登录Oracle 10g 221
B.4 启动Oracle 10g数据库 222
B.5 关闭Oracle 10g数据库 222
B.6 创建ODBC数据源 223
B.7 Oracle的其他配置 223
附录C 使用PowerDesigner的操作步骤 225
C.1 概念模型设计 225
C.2 物理模型设计 225
附录D Windows 7下解决Oracle 10g运行问题 234
D.1 Windows 7安装Oracle 10g方法 234
D.2 64位Windows 7安装Oracle 10g解决方案 243
参考答案 244