11G Concept Oracle数据库简介(一)

2014-11-24 11:56:35 · 作者: · 浏览: 14
11G Concept Oracle 数据库简介
什么是关系数据库
每个公司(组织)都有信息要存储和管理,用来满足它的一些需求.举个例子.一个公司必须收集和维护每个员工的人力资源记录.必须保证这些信息的可用性,而信息系统是一个正式的系统用来存储和处理信息
一个信息系统可能是一个纸盒子,有自己的规律用来存放和检索文件夹
不管怎样,在今天,绝大部分公司都使用database(数据库)来自动化他们的信息系统.
database(数据库)是一个将信息处理成一个一个单元的然后收集组织起来
database(数据库)就是用来收集,存储以及检索 应用程序使用的相关数据
数据库管理系统(DBMS)
DBMS是一个用来存储,组织以及检索数据的软件,通常一个DBMS有以下几个元素:
·Kernel code 内核编码
这个编码管理DBMS的内存和存储
·元数据存储库(Repository)
这个存储库(Repository)通常叫 数据字典
·查询语言
这个语言使应用程序可以访问数据(data)
数据库应用程序(databaseapplication)是一个软件程序,通过与数据库(database)交互而访问和操作数据。就是说一个和数据库有交互的应用软件就叫数据库应用程序
第一代DBMS(databasemanagement system) 有下面这些类型:
·Hierarchical
Hierarchical database 将数据组织成一个树状结构,每个父记录有一个或多个子记录,和文件系统的结构很像
·Network(网络)
Network database 和Hierarchicaldatabase很相似,除了记录之间的关系是多对多,而不是 一对多
这些一代DBMS把数据存储成死板的,预先定义好的关系中。因为没有DDL(data definition language)存在,修改数据的结构是非常麻烦,同样,这些系统缺乏一个简单的查询语言,这些都对应用程序的开发造成了阻碍和麻烦。
关系模型(RelationalModel)
在他1970年开创性论文" A Relational Model of Data for Large Shared Data Banks",E.F. Codee(关系数据库之父)定义了一个基于关系模型的数学集合理论.今天,最被广泛接受的数据库模型就是关系模型
关系型数据库(relational database)是一个符合关系模型的数据库,
关系模型主要有以下几个方面:
·结构
明确定义过的对象存储或者访问数据库中的数据。
·操作
清楚定义的动作(actions) 允许应用程序去操作数据和数据库的结构
·完整的规则管理着操作(操作数据和操作结构)
关系型数据库存储数据到一组简单的关系中.relation 是一组元组(tuples),元组(tuple)是一组无序的属性值
表(table)是一个二维关系由行(元组)以及列(属性)表示的东西。表中的每行都有同样的列,关系型数据库是一个将数据存储在relations(tables)的数据库,举个例子,一个关系型数据库可以存储公司雇员信息进employee表,department表,以及salary表。
关系型数据库管理系统(RDBMS)
关系模型是RDBMS的基础.本质上来说,一个RDBMS移动数据进入database,储存数据,以及检索数据。这样这些数据就可以被应用程序所操作,
RDBMS的操作分为以下几种类型:
·逻辑操作(Logical operations)
在这种操作中,应用程序指定什么内容是需要的,举个例子,一个应用程序请求一个雇员名称或者增加个雇员记录到一个表。-也就是说 我只需要告诉你我要什么(what)
·物理操作(Physical operations)
在这种操作中,RDBMS要确认该怎样进行和完成 命令.举个例子,一个应用查询某表,这个数据库可以使用index(索引)去找到要查询的行,读这些数据进入内存(memory),以及执行一堆其他步骤,才能返回结果给应用.因为RDBMS就是负责存储和检索数据的,所以物理操作对于应用来说是透明的-也就是说 应用只要selelct delete xxx 剩下的事数据库自己会搞定
Oracle 数据库就是一个RDBMS. 而实现了面相对象的特性,如用户定义类型,权限继承以及多态(polymorphism,搞不懂啥意思)的RDBMS被成为"object-relationaldatabase management system(ORDBMS)".
Oracledatabase拥有扩展过的关系模型,也就是object-relational model。这使得在关系型数据库中存储复杂的business model 成为了可能。
Oracle简史 -这个要看一看,可以用来出去tree new bee
当前版本的Oracle database 超过30年的创新研发的结果.
而Oracle database进化过程中的亮点包括:
·Oracle的创建
1977年,Larry Ellison(这哥们可真是rich man),Bob Miner 以及Ed Oates 创建了" Software Development Laboratories" ,这是"Relational Software,Inc.(RSI)"的前身,在1983年,RSI又变成了"Oracle Systems Corporation" 以及后来的"OracleCorporation"
·第一版卖钱的RDBMS
1979年,RSI 推出了Oracle V2(Version 2) 这是第一块用来市场销售的 基于sql的RDBMS(Sql-based RDBMS),这是一个在关系型数据库上具有里程碑意义的事件
·Portable version of oracle database(翻译过来是可移植,也就是说可以跨平台的)
Oracle Version 3,在1983年发布。是第一款能同时运行在大型机,小型机,和PC上的关系型数据库,使数据库能够在多种平台运行
·增强版本并发控制,数据分发,以及可扩展性
Version 4 增加了多版本多一致性.Version5发布在1985年,支持了C/S运算以及分布式数据库系统.Version 6 优化了 磁盘I/O,行锁,可扩展性以及备份和恢复,并且 version6引进了PL/SQL,PL/SQL是基于SQL的可程序增强。
·能够存储的程序化的PL/SQL包(以前都是临时包,现在能存进库里了)
Oracle7 在1992年发布,引进了触发器和可存储的PLSQL包
·分区表
Oracle8发布在1997年,是个object-relational database,支持了很多数据类型(data types),另外Oracle8支持了大表的分区
·Internet computing(也就是8i,9i的那个i的来源)
Oracle8i数据库,发布在1999年,本身支持了