多种类型的数据。例如,现在数据库贮存图像、图表、声音、视频或包括两种或多种类
型的复合文档,已经是很普通的事了。
1.2.1
关系数据库系统
所谓
RDBMS
,即关系数据库管理系统,
为了进一步了解一个
RDBMS
是由什么构成的,你必须先了解关系模型。下列情况
出现在一个关系模型中:
数据的基础项是关系。
在这些表上的操作只产生关系(关系型闭合)。
什么是关系?这是一个描述两个集合的元素如何相互联系或如何一一对应的数学概
念。因此,关系模型是建立在数学基础上的。然而,对你来说,关系只是一个带有一些
特殊属性的表,一个关系模型把数据组织到表中,而且仅在表中。客户、数据库设计
者、数据库系统管理员和用户都以同样的方式—即从表中—查看数据。那么,表就是关
系模型的近义词。
一个关系型表有一组命名的属性(
a t t r i b u t e
)或列,以及一组元组(
t u p l e
)
或行。有时列被称为域,行被称为记录,列和行的交集通常被叫做单元。列标示位置,
有作用域或数据类型,例如字符或整数。行自己就是数据。
一个关系表必须符合某些特定条件,才能成为关系模型的一部分:
1
、贮存在单元中的数据必须是原子的。
每个单元只能存贮一条数据,这也叫信息原则(
Information Principle
)。尽管在过
去的数年中按某些违反这一条的方式已经建立了许多系统,但违反这一条将不能运用良
好的设计原则。当一个单元包含多于一条的信息时,这叫做信息编码(
information
coding
)。在这样的情况下,是否采用违背理论的方案是一个设计的选择问题,尽管在
多数情况下,结果证明这对数据的完整性是一不利的。
2
、贮存在列下的数据必须具有相同数据类型。
3
、每行是唯一的(没有完全相同的行)。
4
、列没有顺序。
5
、行没有顺序。
6
、列有一个唯一性的名称。
除了表和它们的属性,关系模型有它自己特殊的操作。不需要深入研究关系型数
学,只需说明这些操作可能包括列的子集、行的子集、表的连接以及其他数学集合操作
(如联合)等就足够了。真正要知道的事情是这些操作把表当作输入,而将产生的表作
为输出。
S Q L
是当前
R D B M S
的
A N S I
标准语言,它包含这些关系型操作。允许数据
操作或数据处理的主要语句是
S E L E C T
、
I N S E RT
、
U P D AT E
和
D E L E T E
。
因此,这些数据处理操作中任何一个都是一个事务。
允许数据定义或结构化处理的基本语句是
C R E AT E
、
A LT E R
和
D R O P
。关
系模型要求的最后一件事是两个基础的完整性原则。它们是实体完整性原则(
e n t i t y