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)