走进 Oracle ......................................................................................................................... 2
1. Oracle 简介 ....................................................................................................................... 4
2. Oracle 安装 ....................................................................................................................... 5
3. Oracle 客户端工具 ......................................................................................................... 10
4. Oracle 服务 ..................................................................................................................... 17
5. Oracle 启动和关闭 ......................................................................................................... 18
6. Oracle 用户和权限 ......................................................................................................... 19
7. 本章总结 ......................................................................................................................... 22
8. 本章练习 ......................................................................................................................... 23
SQL 数据操作和查询 .......................................................................................................... 26
SQL 简介 ......................................................................................................................... 27
1.
2. Oracle 数据类型 ............................................................................................................. 27
3. 创建表和约束 ................................................................................................................. 28
4. 数据操纵语言(DML) ................................................................................................. 31
5. 操作符 ............................................................................................................................. 36
6. 高级查询 ......................................................................................................................... 37
7. 本章总结 ......................................................................................................................... 45
8. 本章练习 ......................................................................................................................... 46
子查询和常用函数 .............................................................................................................. 49
1. 子查询 ............................................................................................................................. 50
2. Oracle 中的伪列 ............................................................................................................. 52
3. Oracle 函数 ..................................................................................................................... 55
4. 本章总结 ......................................................................................................................... 64
5. 本章练习 ......................................................................................................................... 65
表空间、数据库对象 .......................................................................................................... 68
1. Oracle 数据库对象 ......................................................................................................... 69
2. 同义词 ............................................................................................................................. 69
3. 序列 ................................................................................................................................. 72
4. 视图 ................................................................................................................................. 74
5. 索引 ................................................................................................................................. 76
6. 表空间 ............................................................................................................................. 78
7. 本章总结 ......................................................................................................................... 82
8. 本章练习 ......................................................................................................................... 83
PL/SQL 程序设计 .............................................................................................................. 86
1. PL/SQL 简介 .................................................................................................................... 87
2. PL/SQL 块 ........................................................................................................................ 88
3. PL/SQL 数据类型 ............................................................................................................ 92
4. PL/SQL 条件控制和循环控制 ........................................................................................ 94
5. PL/SQL 中动态执行 SQL 语句 ...................................................................................... 104
6. PL/SQL 的异常处理 ...................................................................................................... 106
7. 本章总结 ....................................................................................................................... 112
8. 本章练习 ....................................................................................................................... 113
Oracle 应用于.Net 平台 .................................................................................................. 115
1. 回顾 ADO.NET ............................................................................................................... 116
2. 使用 ADO.NET 连接 Oracle .......................................................................................... 117
3. 抽象工厂中加入 Oracle ............................................................................................... 121
4. 本章总结 ....................................................................................................................... 126
5. 本章练习 ....................................................................................................................... 127
数据库导入导出 ................................................................................................................ 129
1. Oracle 导入导出 ........................................................................................................... 130
EXP 导出数据 ................................................................................................................ 130
2.
IMP 导入 ....................................................................................................................... 133
3.
4. 常见问题 ....................................................................................................................... 134
第 1 章
走进 Oracle
主要内容
Oracle 安装
Oracle 创建用户和角色
客户端链接 Oracle 服务器
1. Oracle 简介
在第一学期我们已经接触过关系型数据库 SQL Server,对数据库、表、记录、表的增删
改查操作等这些基本的概念已经了解。Oracle 是基于对象的关系型数据库,Oracle 也是用表
的形式对数据存储和管理,并且在 Oracle 的操作中添加了一些面向对象的思想。
Oracle 数据库是 Oracle(中文名称叫甲骨文)公司的核心产品,Oracle 数据库是一个适
合于大中型企业的数据库管理系统。在所有的数据库管理系统中(比如:微软的 SQL Server,
IBM 的 DB2 等),Oracle 的主要用户涉及面非常广,包括:银行、电信、移动通信、航空、
保险、金融、电子商务和跨国公司等。Oracle 产品是免费的,可以在 Oracle 官方网站上下载
到安装包,另一方面 Oracle 服务是收费的。
Oracle 公司成立以来,从最初的数据库版本到 Oracle7、Oracle8i、Oracle9i,Oracle10g
到 Oracle11g,虽然每一个版本之间的操作都存在一定的差别,但是 Oracle 对数据的操作基
本上都遵循 SQL 标准。因此对 Oracle 开发来说版本之间的差别不大。
很多人没有学习 Oracle 就开始发怵,因为人们在误解 Oracle,认为 Oracle 太难学了,
认为 Oracle 不是一般人用的数据库,其实任何数据库对应用程序研发人员来说,都是大同
小异,因为目前多数数据库都支持标准的 SQL。在 Oracle 这本书中,我们能学习到:
Oracle 的安装
Oracle 数据管理
常用子查询及常用函数
PL/SQL 编程
Oracle 基本管理
由于在第一学期已经接触了 SQL Server,Oracle 数据库的概念不是很难,主要是实践,
因此在本书的学习中,认真的完成上机练习是学习好本书的关键。
接下来我们先从 Oracle 安装开始,接触一些 Oracle 中基本的概念。
2. Oracle 安装
Oracle 数据库产品是免费的,我们可以从 Oracle 的官方网站(http://www.oracle.com)下
载到程序安装包,Oracle 在 Windows 下的安装非常方便,安装开始后,一直点击安装程序
的“下一步”即可。
1. 下载 Oracle10g 后,解压到一个文件夹下,单击“setup.exe”文件即可启动安装界
面。如下图:
图 1 Oracle 安装启动界面
Oracle 主目录位置就是 Oracle 准备安装的位置,称为“Oracle_Home”,一般 Oracle 根
据当前计算机的硬盘大小默认给出一个合适的位置。Oracle 安装时可以只安装 Oracle 软件,
然后单独创建数据库,也可以在上图中选中“创建启动数据库”复选框,在安装 Oracle 产
品时,同时创建一个数据库,对初学者来说,推荐这样安装。填写全局数据库名,以及管理
员的密码。全局数据库名是数据库在服务器网络中的唯一标识。
2. 点击“下一步”,就会出现如下图内容,开始对 Oracle 服务器进行环境检查,主要
查看服务器是否符合 Oracle 安装的条件,比如操作系统是否支持、系统内存是否符
合 Oracle 安装的最低要求等。
图 2 Oracle 安装前环境检查
3. Oracle 检查通过后,单击“下一步”,就会列出所有安装 Oracle 过程中的默认选项。
图 3 Oracle 默认安装设置
4. 单击“安装”按钮,进入安装界面,这一过程经历时间比较长,根据计算机的性能
不同有很大差别。
图 4 Oracle 安装
5. 上图完成后,进入了各种 Oracle 工具的安装阶段,包括网络配置向导,iSQL*plus
等(后面课程中讲解)。如下图所示:
图 5 Oracle 各种工具的安装
6. 接下来自动启动 DBCA(Database Configuration Assistant)进入创建默认数据库阶段。
图 6 DBCA 下安装数据库
Oracle 中的数据库主要是指存放数据的文件,这些文件在 Oracle 安装完成后,在计算机
硬盘上都能找到,包括数据文件、控制文件和数据库日志文件。
数据库创建后会有一系列为该数据库提供服务的内存空间和后台进程,称为该数据库的
实例。每一个数据库至少会有一个实例为其服务。实例中的内存结构称为系统全局区(SGA),
系统会根据当前计算机系统的性能给 SGA 分配非常可观的内存空间。
Oracle 创建数据库不能像 SQL Server 那样用一个简单的 CREATE DATABASE 命令就能完成,
在创建数据库的过程中还需要配置各种参数。虽然有 DBCA 工具向导,但是仍然需要进行比
较麻烦的配置。
虽然一个 Oracle 数据库服务器中可以安装多个数据库,但是一个数据库需要占用非
常大的内存空间,因此一般一个服务器只安装一个数据库。每一个数据库可以有很
多用户,不同的用户拥有自己的数据库对象(比如:数据库表),一个用户如果访问
其他用户的数据库对象,必须由对方用户授予一定的权限。不同的用户创建的表,
只能被当前用户访问。因此在 Oracle 开发中,不同的应用程序只需使用不同的用户
访问即可。
7. 数据库创建完毕后,需要设置数据库的默认用户。Oracle 中为管理员预置了两个用
户分别是 SYS 和 SYSTEM。同时 Oracle 为程序测试提供了一个普通用户 scott,口令
管理中,可以对数据库用户设置密码,设置是否锁定。 Oracle 客户端使用用户名
和密码登录 Oracle 系统后才能对数据库操作。