数量方法
第一章 数据库概论一、数据管理技术的发展阶段(识记) 数据管理技术共经历了三个阶段:人工管理阶段、文件系统阶段、数据库阶段:1、人工管理阶段的特点: (1)数据不保存在机器中(2)没有专用软件对数据进
第一章 数据库概论
一、数据管理技术的发展阶段(识记) 数据管理技术共经历了三个阶段:人工管理阶段、文件系统阶段、数据库阶段:
1、人工管理阶段的特点: (1)数据不保存在机器中
(2)没有专用软件对数据进行管理 (3)只有程序的概念,没有文件的概念。
2、文件系统阶段的特点与缺陷: (1)数据可长期保存在磁盘上。 (2)数据的逻辑结构与物理结构有了区别
(3)文件组织呈现多样化
(4)数据不再属于某个特定程序,可以重复使用。 其缺陷是: 数据冗余性 数据不一致性 数据联系弱
3、数据库阶段的特点
采用复杂的数据模型表示数据结构 有较高的数据独立性(数据结构分成用户的逻辑结构、整体逻辑结构和物理结构三级)
数据库系统为用户提供方便的用户接口,可以使用查询语言、终端命令或程序方式操作数据库。 系统提供了四个方面的数据控制功能:数据库的恢复、并发控制、数据完整性和数据安全性。
对数据的操作不一定以记录为单位,
还可以数据项为单位。
数据库技术中的四个名词:DB、DBMS 、DBS 、数据库技术。其概念是不同的,要分清。
DB :数据库(Database),DB 是统一管理的相关数据的集合。
DBMS :数据库管理系统(Database Management
System) ,DBMS 是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB 的方法,包括DB 的建立、查询、更新及各种数据控制。DBMS 总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS 。 DBS :数据库系统(Database System),DBS 是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。
数据库技术:是一门研究数据库结构、存储、管理和使用的软件学科。
二、数据描述的术语(领会) 1、数据描述的三个领域:现实世界、信息世界和机器世界。
信息世界中的几个概念:实体(即客观存在可以相互区别的事物) 、实体集(同类实体的集合) 、属性(实体的特性) 、实体标识符(唯一标识实体的属性(集)) 。
机器世界中的四个概念:字段、记录、文件、键(关键码) 。
2、数据描述的两种形式:物理描述和逻辑描述。前者是指数据在存储设备上的存取方式,后者是指程序员或用户以用以操作的数据形式。 3、物理描述用到的术语有:位、字节、字、块、桶、卷 4、数据联系的描述:
1:1联系:如果实体集E1中的每个实体最多只能和实体集E2中的一个实体有联系,反之亦然,好么实体集E1对E2的联系称为" 一对一联系" ,记为"1:1" 。
1:N 联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中的一个实体有联系,那么E1对E2的联系是" 一对多联系" ,记为"1:N" 。
M :N 联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1对E2的联系是" 多对多联系" ,记为"M :N" 。
三、数据模型
1、数据模型的概念(领会) : 表示实体类型及实体类型间联系的模型称为" 数据模型" 。它可分为两种类型:概念数据模型和结构数据模型。
2、 概念数据模型(简单应用) : 它是独立于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息
结构。(应当掌握教材例1.1,设计简单的ER 模型)
3、 结构数据模型:它是直接面向数据库的逻辑结构,是现实世界的第二层抽象。这类模型涉及到计算机系统和数据库管理系统,所以称为" 结构数据模型" 。结构数据模型应包含:数据结构、数据操作、数据完整性约束三部分。它主要有:层次、网状、关系三种模型。
层次模型(识记) :用树型结构表示实体间联系的数据模型
网状模型(识记) :用有向图结构表示实体类型及实体间联系的数据模型。 关系模型(领会) :是由若干个关系模式组成的集合,其主要特征是用二维表格结构表达实体集,用外鍵表示实体间联系。
4、面向对象模型(识记):通过对象和类的概念来建立的数据库模型,是面向对象技术与数据库技术结合的产物,本节了解一下即可。
四、数据库的体系结构(领会) 1、三级结构模式:数据库的体系结构分为三级:内部级、概念级和外部级:
外部级:单个用户所能看到的数据特性,称外模式。
概念级:涉及到所有用户的数据定义,是全局的数据视图, 称" 概念模式" 。
内部级:最接近于物理存储,涉及到实际数据存储的结构,称" 内模式" 。
2、两级映象:
模式/内模式映象:用于定义概念模式和内模式之间的对应性。一般在内模式中描述。
外模式/模式映象:用于定义外模式和概念模式间的对应性。一般在外模式中描述。 3. 两级数据独立性:
物理数据独立性:修改内模式时尽量不影响概念模式及外模式,则达到物理数据独立性。
逻辑数据独立性:修改概念模式时尽量不影响外模式和应用程序。 4. 用户及用户界面:这里插一句,数据库模式可以理解为数据库结构。
五、数据库管理系统(DBMS 领会) 1、DBMS 的主要功能:
(1)数据库的定义功能 (2)数据库的操纵功能 (3)数据库的保护功能 (4)数据库的存储管理 (5)数据库的维护功能 (6)数据字典 2、DBMS 的组成:
由两大部分组成:查询处理器和存储管理器,前者包括DDL 编译器、DML 编译器、嵌入型DML 预编译器、查询运行核心程序。后者包括授权和完整性管理器,事务管理器、文件管理器,缓冲区管理器。
六、数据库系统(DBS 领会) DBS 由四部分组成:数据库、硬件、
,软件、数据库管理员。
DBS 的全局结构及DBS 的效益,了解一下。
2楼 一闪 发表于:2005-3-16 11:03:22 第二章 关系模型
本章为次重点章,我们经常使用的数据库均采用关系模型,本章主要介绍了关系模型的关系运算理论,主要在于对关系演算运算的理解,为后面章节的SQL 作准备。
一、关系模型的基本概念(识记) 1、关系模型的基本术语: 用二维表格结构表示实体集、外键表示实体间联系的数据模型称为关系模型。
基本术语有:字段(属性) 、字段值(属性值) 、记录(元组) 、二维表格(元组集合、关系或实例) 。在这里,括号中的表述为关系模型中的术语。它与表格中术语可以一一对应。还有,关系中属性个数称为元数,元组个数为基数。
键:由一个或几个属性组成。(注意键不一定是唯一的一个属性) 。 超键:在关系中能唯一标识元组的属性集称为关系模式的超键。(注意,超键也是一个属性集,不一定只是一个属性)
候选键:不含有多余属性的超键称为候选键。
主键:用户选作元组标识的一个候选
键为主键。
外键:某个关系的主键相应的属性在另一关系中出现,此时该主键在就是另一关系的外键,如有两个关系S 和SC, 其中S#是关系S 的主键,相应的属性S#在关系SC 中也出现,此时S#就是关系SC 的外键。
2、关系模式、关系子模式和存储模式
关系模式:关系模式实际上就是记录类型。它包括:模式名,属性名,值域名以及模式的主键。关系模式仅是对数据特性的描述。 (这通常在数据库中表现为一个数据表的结构) 关系子模式:就是用户所用到那部分数据的描述。
存储模式:关系存储时的基本组织方式是文件,元组是文件中的记录。 3、关系模型的三类完整性规则 实体完整性规则:要求关系中组成主键的属性上不能有空值。 参照完整性规则:要求不引用不存在的实体。
用户定义完整性规则:由具体应用环境决定,系统提供定义和检验这类完整性的机制。
4、关系模型的形式定义:数据结构、数据操作和完整性规则。
二、关系代数运算(简单应用) 1、关系代数的五个基本操作:并、差、笛卡尔积、投影和选择。 并(∪) :两个关系需有相同的关系模式,并的对象是元组,由两个关系所
有元组构成。
差(-):同样,两个关系有相同的模式,R 和S 的差是由属于R 但不属于S 的元组构成的集合。
投影(σ) :对关系进行垂直分割,消去某些列,并重新安排列的顺序。 选择(π) :根据某些条件关系作水平分割,即选择符合条件的元组。 2、关系代数的四个组合操作:交、联接、自然联接和除法
交(∩) :R 和S 的交是由既属于R 又属于S 的元组构成的集合。 联接包括θ联接和F 联接,是选择R ×S 中满足i θ(r j)或F 条件的元组构成的集合,特别注意等值联接(θ为等号"=")。
自然联接(R|X|S):在R ×S 中,选择R 和S 公共属性值均相等的元组,并去掉R ×S 中重复的公共属性列。如果两个关系没有公共属性,则自然联接就转化为笛卡尔积。
除法(÷) :首先除法的结果中元数为两个元数的差,以例2.6为例,我们可以直接用观察法来得到结果,把S 看作一个块,拿到R 中去和相同属性集中的元组作比较,如果有相同的块,且除去此块后留下的相应元组均相同,那么可以得到一条元组,所有这些元组的集合就是除法的结果。 对于上述的五个基本操作和组合操作,应当从实际运算方面进行理解和运用,对其形式定义可不必深究。注意课本上的例子。 3、关系代数表达式及应用
在关系代数表达式中,复合了上述五个基本操作,在给出相应的表格(关系) 中,应该能够根据给出的关系代数表达式计算关系值,也要能根据相应查询要求列出关系表达式。 在列关系表达式时,通常有以下形式:
π...(σ...(R×S)) 或者π...(σ...(R|X|S))
首先把查询涉及到的关系取来,执行笛卡尔积或自然联接操作得到一张大的表格,然后对大表格执行水平分割(选择) 和垂直分割(投影) 操作。但是注意当查询涉及到否定或全部值时,就不能用上述形式,而要用到差或除法操作。
三、关系演算(领会)
关系演算分为元组关系演算或域关系演算,前者以元组为变量,后者以域为变量。
元组演算表达式的一般形式为:{t|P(t)},其含义为:这是一个元组集合,其中的每个元组t(t是元组变量) 满足公式P 所规定的条件。所以在书写演算表达式时,应该注重理解公式P 如何表达。
域演算表达式的一般形式为:{t1...tk|P(t1...,tk)},其含义为:这是一个域集合,其中每个域变量的取值关系满足公式P 所规定的条件。也是注意公式P 的表达。 以上两类演算需要一定的离散数学基础,如果不能很深刻的掌握,问题
也不大,主要应看懂表达式即可,对于给定的表达式和给定的关系,应当能计算表达式的结果(得到一个关系)
四、查询优化
查询优化的目的就是为了系统在执行时既省时间又能提高效率,在关系代数运算中,通常是先进行笛卡尔积或联接运算,再进行选择和投影,恰当地安排选择、投影和联接的顺序,就可实现查询优化。
优化的策略主要有以下几点: (1)在关系代数表达式中尽可能早地执行选择操作(早选择).
(2)把笛卡尔积和随后的选择操作合并成F 联接运算(F联接) (3)同时计算一连串的选择和投影操作(同时算)
(4)保留同一子表达式的结果 (5)适当对关系文件进行预处理 (6)计算表达式之前先估计一下怎么计算合算。
以上几点需要理解。根据表达式优化的算法步骤对给定表达式进行优化 3楼 一闪 发表于:2005-3-16 11:03:55
第三章关系数据库SQL 语言
本章为重点章,应熟悉和掌握SQL 的数据定义、数据查询、数据更新的句法及其应用,特别是数据查询的应用。结合上机操作进行理解和掌握。
,一、SQL 概述。 1、SQL 发展历程(识记)
SQL 从1970年美国IBM 研究中心的E.F.Codd 发表论文到1974年Boyce 和Chamberlin 把SQUARE 语言改为SEQUEL 语言,到现在还在不断完善和发展之中,SQL(结构式查询语言) 虽然名为查询,但实际上具有定义、查询、更新和控制等多种功能。 2、SQL 数据库的体系结构(领会) SQL 数据库的体系结构也是三级结构,但术语与传统关系模型术语不同,在SQL 中,关系模式称为" 基本表" ,存储模式称为" 存储文件" ,子模式称为" 视图" ,元组称" 行" ,属性称" 列" 。
SQL 数据库体系的结构要点如下: (1)一个SQL 数据库是表的汇集。 (2)一个SQL 表由行集构成,行是列的序列,每列对应一个数据项。 (3)表或者是基本表,或者是视图。基本表是实际存储在数据库中的表,视图由是由若干基本表或其他视图构成的表的定义。
(4)一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。存储文件与物理文件对应。
(5)用户可以用SQL 语句对表进行操作,包括视图和基本表。 (6)SQL的用户可以是应用程序,也可以是终端用户。 3、SQL 的组成(识记) SQL 由四部分组成:
(1)数据定义:SQL DDL。定义SQL 模式,基本表、视图和索引。 (2)数据操纵:SQL DML 。包括数据查询和数据更新(增、删、改) 。 (3)数据控制:包括对基本表和视图的授权、完整性规则的描述,事务控制等。
(4)嵌入式SQL 的使用规定。
二、SQL 的数据定义(简单应用) 1、SQL 模式的创建和撤消: SQL 模式的创建可简单理解为建立一个数据库,定义一个存储空间,其句法是: CREAT SCHEMA
<模式名> AUTHORIZATION <用户名> 撤消SQL 模式的句法为: DROP SCHEMA <模式名> [CASCADE|RESTRICT]
方括号中的选项参数CASCADE 表示连锁方式,执行时将模式下所有基本表、视图、索引等元素全部撤消。RESTRICT 表示约束式,执行时必须在SQL 模式中没有任何下属元素时方可撤消模式。
2、SQL 提供的基本数据类型 数值型:包括 integer、smallint 、real 、double precision 、float(n),numeric(p,d) 字符串型:char(n)、varchar(n),前者是定长,后者为变长串 位串型:bit(n),bit varying(n),同上。
时间型:date 、time 。
3、基本表的创建、修改和撤消 基本表的创建:(可理解为建立表结构)
CREAT TABLE SQL 模式名. 基本表名 (列名,类型, ……
完整性约束...)
完整性约束包括主键子句(PRIMARY KEY) 、检查子句(CHECK)和外键子句(Foreign KEY). 基本表结构的修改 ALTER TABLE 基本表名
ADD/DROP(增加/删除) 列名 类型名(增加时写出) 删除时有子句
[CASCADE|RESTRICT],前者为连锁删除,后者为约束删除,即没有对本列的任何引用时才能删除。 基本表的撤消 DROP TABLE 基本表名 [CASCADE|RESTRICT] 4、视图的创建和撤消
创建:CREAT VIEW 视图名(列名表) AS SELECT 查询语句 撤消:DROP VIEW 视图名 5、索引的创建和撤消
创建:CREAT [UNIQUE] INDEX 索引名 ON 基本表名(列名表 [ASC|DESC])
撤消:DROP INDEX 索引名 总结:凡创建都用CREAT , 删除都用DROP, 改变用alter, 再跟类型和名字,附加子句很容易了。
三、SQL 的数据查询(综合应用) 这一段是本章的重点内容,应该熟练掌握。首先了解基本句法: 1、SELECT-FROM-WHERE 句型 SELECT 列名表(逗号隔开) FROM 基本表或视图序列 WHERE 条件表达式 在这里,重点要掌握条件表达式中各种运算符的应用,如=,>,<,<>等算术比较运算符、逻辑运算符AND 、OR 、NOT 、集合成员资格运算符:IN ,NOT IN ,以及嵌套的SELECT 语句的用法要特别注意理解。针对课本的例题和课后习题进行掌握。
在查询时,SELECT 语句可以有多种写法,如联接查询、嵌套查询和使用存在量词的嵌套查询等。最好都掌握,但是起码应能写出一种正确的查询语句。
2.SELECT 语句完整的句法: SELECT 列名表(逗号隔开) FROM 基本表或视图序列 [WHERE 条件表达式] (此为和条件子句)
[GROUP BY 列名序列] (分组子句) [HAVING 组条件表达式] (组条件子句)
[ORDER BY列名[ASC|DESC]..] (排序子句)
这段关于完整句法的内容能够理解也就问题不大了。 3、SELECT 语句中的限定
这一段内容主要是对SELECT 语句进一步使用进行的深入学习,领会下列各种限定的使用目的和方法。
要求输出表格中不出现重复元组,则在SELECT 后加一DISTINCT SELECT 子句中允许出现加减乘除及列名,常数的算术表达式 WHERE 子句中可以用
BETWEEN...AND... 来限定一个值的范围
同一个基本表在 SELECT语句中多次引用时可用AS 来增加别名 WHERE 子句中字符串匹配用LIKE 和两个通配符,和下划线_. 查询结果的结构完全一致时可将两个查询进行并(UNION)交(INTERSECT)差(EXCPT)操作
查询空值操作不是用='null',而是用 IS NULL来测试。
集合成员资格比较用 IN/NOT IN ,集合成员算术比较用元组θSOME/ALL
可以用子查询结果取名(表名(列名序列)) 来作为导出表使用 基本表的自然联接操作是用 NATURAL INNER JOIN来实现的。
四、SQL 的数据更新(简单应用) 简单应用就是掌握基本的句型并能套用在一些简单的查询要求上。 1、数据插入:
INSERT INTO 基本表名(列名表) valueS (元组值) 或
INSERT INTO 基本表名(列名表) SELECT 查询语句
其中元组值可以连续插入。用查询语
,句可以按要求插入所需数据。 2、数据删除:
DELETE FROM 基本表名 [WHERE条件表达式] 3、数据修改: UPDATE 基本表名
SET 列名=值表达式,[列名=值表达式...]
[WHERE 条件表达式] 4、对视图的更新:
我们知道,对视图的查询是和基本表相同的,但是更新操作则受到下列三条规则的限制:(领会一下) 如果视图是从多个基本表使用联接操作导出的,则不允许更新。 如果导出的视图使用了分组和聚合操作,也不允许更新。 如果视图是从单个基本表使用选择和投影操作导出的,并且包括了基本表的主键或某个候选键,则可以执行操作。(这就相当于在基本表上操作) 。
这一节的关于增删改的操作要和前面关于数据库模式、表的增删改操作进行对比学习,以加深理解。不要忘记上机实践。
4楼 一闪 发表于:2005-3-16 11:04:48
第四章_关系数据库的模式设计 本章的理论性较强,学习时有无从下手的感觉,在学习时应多加思考,从概念出发去理解理论,前后的理论有较强的联系,因此要逐个理解,但对
于理论的证明等内容则不必深究,本章重点是函数依赖,无损联接、保持依赖和范式的概念。
一、关系模式的设计问题(识记) 关系数据库是以关系模型为基础的数据库,它利用关系来描述现实世界。一个关系既可以用来描述一个实体及其属性,也可以用来描述实体间的联系。关系实质上就是一张二维表,表的行称为元组,列称为属性。 关系模式是用来定义关系的,这里的关系模式我们可以简单地理解为一个表的结构,一个关系数据库包含一组关系,也就是包含一组二维表,这些二维表结构体的集合就构成数据库的模式(也可以理解为数据库的结构) 。
关系数据库设计理论包括三个方面内容:数据依赖、范式、模式设计方法。核心内容是数据依赖。 泛关系模式:把现实问题的所有属性组成一个关系模式R(U),这个关系模式就称为泛关系模式。
数据库模式:把泛关系模式用一组关系模式的集合ρ来表示时,这个ρ就是数据库模式。
下面我们总结一下关系模式的相关内容从" 大" 到" 小" 的排列 泛关系模式→数据库模式→关系数据库→表结构→关系模式实例(表) →记录(行、列.)
关系模式的存储异常:数据冗余、更新异常、插入异常和删除异常
二、函数依赖(FD)
1、函数依赖的定义(领会) :设有关系模式R(A1,A2,...An) 或简记为R(U),X ,Y 是U 的子集,r 是R 的任一具体关系,如果对r 的任意两个元组t1,t2, 由t1[X]=t2[X]导致t1[Y]=t2[Y],则称X 函数决定Y ,或Y 函数依赖于X ,记为X →Y 。X →Y 为模式R 的一个函数依赖。 这个定义可以这样理解:有一张设计好的二维表,X ,Y 是表的某些列(可以是一列,也可以是多列) ,若在表中的第t1行,和第t2行上的X 值相等,那么必有t1行和t2行上的Y 值也相等,这就是说Y 函数依赖于X 。如下图所示:
A1A2A3栏目名(X)课程A6A7网站名(Y)
……………………
t1晓津专栏数据库原理计算机自考 ………自考试卷………计算机自考 t2晓津专栏数据结构计算机自考 ………自考试卷………计算机自考 t3晓津专栏面向对象计算机自考 ………自考试卷………计算机自考
在表中,凡栏目名相同的,对应的网站名也必是相同的,则此时说 栏目名函数决定网站名,或" 网站名" 函数依赖于" 栏目名" 。但是反过来不一定,网站名相同时并不一定栏目名相同,所以这里的Y →X 是不成立的。 要特别注意的是,在这张表中,任何
一行的关系均应符合上述条件,如果有一行不符合函数依赖的条件,则函数依赖对于这个关系就不成立。 还有应该了解的是,函数依赖是否成立是不可证明的,只能通过属性的含义来判断,上述表是一个关系实例,可以一条条进行验证,但是对于模式设计来说,开始时并没有数据插入,我们只能从属性的含义出发,如这个关系模式不仅是指一个站点,而是包括所有站点,则有可能出现相同的栏目名而网站名不是一样的情况,那么" 栏目名→网站名" 这个函数依赖就不成立了。
上述例子可对照课本理论进行领会。 2、函数依赖的逻辑蕴涵(识记) 设F 是关系模式R 的一个函数依赖集,X,Y 是R 的属性子集,如果从F 中的函数依赖能够推出X →Y ,则称F 逻辑蕴涵X →Y ,记为F|=X→Y. 如前面的例子,如果还有一属性" 网址(Z)",且网站名是唯一的,那么," 网站名→网址" 成立,同时已知 " 专栏名→网站名" 成立,根据我们对事实的掌握,可知 "专栏名→网址" 也是成立的。所以在这里,设F={网站名(Y)→网址(Z),专栏名(X)→网站名(Y)},则F 逻辑蕴涵 " 专栏名(X)→网址(Z)"。 而函数依赖的闭包F 是指被F 逻辑蕴涵的函数依赖的全体构成的集合。 3、键和FD 的关系(领会)
键是唯一标识实体的属性集。对于键和函数依赖的关系:有两个条件:设
关系模式R(A1,A2...An),F 是R 上的函数依赖集,X 是R 的一个子集, (1)X→A1A2...An ↔F (它的意思是X 能够决定唯一的一个元组) (2)不存在X 的真子集Y ,使得Y 也能决定唯一的一个元组,则X 就是R 的一个候选键。(它的意思是X 能决定唯一的一个元组但又没有多余的属性集)
包含在任何一个候选键中的属性称为主属性,不包含在任何键中的属性为非主属性(非键属性) ,注意主属性应当包含在候选键中。
4、函数依赖(FD)的推理规则(简单应用)
前面我们举的例子中是以实际经验来确定一个函数依赖的逻辑蕴涵,但是我们需要一个推理规则才能完全确定F 或F 的所有函数依赖。 设有关系模式R(U),X ,Y ,Z ,W 均是U 的子集,F 是R 上只涉及到U 中属性的函数依赖集,推理规则如下: 自反律:如果Y X U,则X →Y 在R 上成立。
增广律:如果X →Y 为F 所蕴涵,Z U ,则XZ →YZ 在R 上成立。(XZ表示X ∪Z ,下同)
传递律:如果X →Y 和Y →Z 在R 上成立,则X →Z 在R 上成立。 合并律:如果X →Y 和X →Z 成立,那么X →YZ 成立。
伪传递律:如果X →Y 和WY →Z 成立,那么WX →Z 成立。
分解律:如果X →Y 和Z Y成立,那
,么X →Z 成立。
5、函数依赖推理规则的完备性(识记)
函数依赖推理规则系统(自反律、增广律和传递律) 是完备的。由推理规则的完备性可得到两个重要结论: 属性集X 中的每个属性A ,都有X →A 被F 逻辑蕴涵,即X 是所有由F 逻辑蕴含X →A 的属性A 的集合。 F 是所有利用Amstrong 推理规则从F 导出的函数依赖的集合
6、函数依赖集的等价和覆盖(识记) 在关系模式R(U)上的两个函数依赖集F 和G ,如果满足F =G ,则称F 和G 是等价的,称F 和G 等价也称F 覆盖G 或G 覆盖F 。
每个函数依赖集F 都可以被一个右部只有单属性的函数依赖集G 所覆盖。
如果函数依赖集合F 满足: (1)F中每一个函数依赖的右部都是单属性;
(2)F中的任一函数依赖X →A ,其F-{X→A}是不等价的;
(3)F中的任一函数依赖X →A ,Z 为X 的子集。(F-{X→A})∪{Z→A}与F 不等价。
则称F 为最小函数依赖集合。 如果函数依赖集F 和G 等价,并且G 是最小集,那么称G 是F 的一个最小覆盖。
这一段并不要求掌握最小集的求法,但是应当通过其求法理解最小集的概念。
三、关系模式的分解特性
1、模式分解中存在的问题:(识记) 模式分解就是将一个泛关系模式R 分解成数据库模式ρ,以ρ代替R 的过程。它不仅仅是属性集合的分解,它是对关系模式上的函数依赖集、以及关系模式的当前值分解的具体表现。
分解一个模式有很多方法,但是有的分解会出现失去函数依赖、或出现插入、删除异常等情况,而有的分解则不出现相关问题。
衡量一个分解的标准有三种:分解具有无损联接;分解要保持函数依赖;分解既要保持依赖,又要具有无损联接。
那么什么是无损联接呢? 什么又是保持依赖?
2、无损联接的定义和性质(识记) 设R 是一关系模式,分解成ρ={R1,R2,...,Rk},F 是R 上的一个函数依赖集。无损联接就是指R 中每一个满足F 的关系r(也就是一个关系实例) 都有r=πR1(r)|X|πR2(r)...|X|πR3(r),即r 为它在Ri 上的投影的自然联接。 最简单的理解,也就是说,分解后的关系自然连接后完全等于分解前的关系,则这个分解相对于F 是无损联接分解。
设R 的分解为ρ={R1,R2},F为R 所满足的函数依赖集,则分解ρ具有无损联接性的充分必要条件是:
R1∩R2→(R1-R2) R1∩R2→(R2-R1)
也就是说,分解后的两个模式的交能决定这两个模式的差集,即R1、R2的公共属性能够函数决定R1或R2中的其他属性,这样的分解就必定是无损联接分解。
3、保持函数依赖的分解(识记) 在分解过程中,要求模式分解的无损联接是必要的,只有无损联接分解才能保证任何一个关系能由它的那些投影进行自然联接得到恢复。 同时,分解关系模式时还应保证关系模式的函数依赖集在分解后仍在数据库模式中保持不变,这就是保持函数依赖的问题。也就是所有分解出的模式所满足的函数依赖的全体应当等价于原模式的函数依赖集。只有这样才能确保整个数据库中数据的语义完整性不受破坏。
四、关系模式的范式(领会) 1、1NF 、2NF 、3NF 、BCNF 的定义: 1NF :第一范式。
即关系模式中的属性的值域中每一个值都是不可再分解的值。如果某个数据库模式都是第一范式的,则称该数据库模式是属于第一范式的数据库模式。
比如有一个关系 串讲笔记={作者,课程},若有这样几行记录: 作者课程
晓津数据结构、数据库原理 阿猫网络与通信
这时的第一条记录就表示本关系模式不是1NF 的,因为课程中的值域还是可以分解的,它包括了两门课程,如分为: 作者课程 晓津数据结构 晓津数据库原理
就成为第一范式的关系模式。 2NF :第二范式。
如果关系模式R 为第一范式,并且R 中每一个非主属性完全函数依赖于R 的某个候选键,则称为第二范式模式。
在这里要先了解" 非主属性" 、" 完全函数依赖" 、" 候选键" 这三个名词的含义。
候选键就是指可以唯一决定关系模式R 中某元组值且不含有多余属性的属性集。
非主属性也就是非键属性,指关系模式R 中不包含在任何建中的属性。 设有函数依赖W →A ,若存在X W ,有X →A 成立,那么称W →A 是局部依赖,否则就称W →A 是完全函数依赖。
在分析是否为第2范式时,应首先确定候选键,然后把关系模式中的非主属性与键的依赖关系进行考察,是否都为完全函数依赖,如是,则此关系模式为2NF 。如果数据库模式中每个关系模式都是2NF 的,则此数据库模式属于2NF 的数据库模式。
3NF :第三范式。
如果关系模式R 是第二范式,且每个非主属性都不传递依赖于R 的候选键,则称R 为第三范式的模式。
这里首先要了解传递依赖的含义: 在关系模式中,如果Y →X ,X →A ,且X 不决定Y 和A 不属于X ,那么Y →A 是传递依赖。
注意的是,这里要求非主属性都不传递依赖于候选键。
BCNF :这个范式和第三范式有联系,它是3NF 的改进形式。若关系模式R 是第一范式,且每个属性都不传递依赖于R 的候选键。这种关系模式就是BCNF 模式。
纵观四种范式,可以发现它们之间存在如下关系: BCNF 3NF 2NF 1NF 1NF
↓消去非主属性对键的部分函数依赖 2NF
↓消去非主属性对键的传递函数依赖 3NF
↓消去主属性对键的传递函数依赖 BCNF
5、分解成BCNF 模式集的算法(识记) 对于任一关系模式,可找到一个分解达到3NF ,且具有无损联接和保持函数依赖性。而对于BCNF 分解,则可
,以保证无损联接但不一定能保证保持函数依赖集。
无损联接分解成BCNF 模式集的算法:
(1)置初值ρ={R};
(2)如果ρ中所有关系模式都是BCNF ,则转(4);
(3)如果ρ中有一个关系模式S 不是BCNF ,则S 中必能找到一个函数依赖集X →A 有X 不是S 的键,且A 不属于X ,设S1=XA,S2=S-A,用分解S1,S2代替S ,转(2); (4)分解结束。输出ρ。
在这个过程中,重点在于(3)步,判断哪个关系不是BCNF ,并找到X 和A 。这里,S 的判断用BCNF 的定义,而X 不是S 的键则依靠分析。 6、分解成3NF 模式集(识记) 算法:
(1)如果R 中的某些属性在F 的所有依赖的左边和右边都不出现,那么这些属性可以从R 中分出去,单独构成一个关系模式。
(2)如果F 中有一个依赖X →A 有XA →R ,则ρ={R},转(4)
(3)对于F 中每一个X →A ,构成一个关系模式XA ,如果F 有有X →A1,X →A2...X →An, 则可以用模式XA1A2...An 代替n 个模式XA1,XA2...XAn;
(4)w分解结束,输入ρ。 这个过程的重点是这一句" 对于F 中每一个X →A ,构成一个关系模式XA" ,这使我们的分解十分容易,然
后依据合并律(合并律:如果X →Y 和X →Z 成立,那么X →YZ 成立) 将有关模式合并即得到所需3NF 模式。 7、模式设计方法的原则(识记) 关系模式R 相对于函数依赖集F 分解成数据库模式ρ={R1,R2...Rk},一般具有下面四项特性:
ρ中每个关系模式Ri 上应具有某种范式性质(3NF或BCNF) 无损联接性。 保持函数依赖集。
最小性,即ρ中模式个数应最少且模式中属性总数应最少。 一个好的模式设计方法应符合下列三条原则: 表达性 分离性 最小冗余性
8、多值依赖。简单了解一下。
5楼 一闪 发表于:2005-3-16 11:05:16
第五章_数据库设计
与上一章不同,本章的实用性较强,详细讲述了数据库应用系统设计的全过程。重点是概念设计中ER 模型的设计方法,逻辑设计中ER 模型向关系模型的转换方法。
一、数据库设计概述(识记) 1、软件生存期:是指从软件的规划、研制、实现、投入运行后的维护、直到它被新的软件所取代而停止使用的整个期间。它包括六个阶段:(规
需设编试运维) (1)规划阶段 (2)需求分析阶段 (3)设计阶段 (4)程序编制阶段 (5)调试阶段 (6)运行维护阶段 2、数据库系统生存期
数据库应用系统的开发也是一项软件工程,称为数据库工程,数据库应用系统也有生存期的概念,通常包括七个阶段: (1)规划阶段 (2)需求分析阶段 (3)概念设计阶段 (4)逻辑设计阶段 (5)物理设计阶段 (6)实现阶段 (7)运行维护阶段 3、数据库设计方法学
一个好的数据库设计方法应该能在合理的期限内,以合理的工作量产生一个有实用价值的数据库结构。 数据库及其应用系统的设计分为以下几个阶段:规划、需求分析、概念设计、逻辑设计、物理设计。
二、规划(识记)
数据设计中的规划阶段的主要任务是进行建立数据库的必要性及可性性分析,确定数据库系统在组织中和组织中和信息系统中的地位,以及各个数据库之间的联系。
三、需求分析(识记)
需求分析阶段应对系统的整个应用情况作全面的、详细的调查、确定用户的目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定用户需求,并把这些要求写成用户和数据库设计者都能够接受的文档。
确定用户需求可以通过对不同层次的企业管理人员进行个人访问得到。还应了解系统将来要发生的变化,充分考虑系统的可能的扩充和变动,使系统设计更符合未来发展方向。 需求分析的步骤大致分为三步:即需求信息的收集、分析整理和评审。 数据字典:是对系统中数据的详尽描述,它提供对数据库数据描述的集中管理。它包含以下几个部分:数据项、数据结构、数据流、数据存储和加工过程。
四、概念设计(识记)
1、概念模型:可以看成是现实世界到机器世界的一个过渡的中间层次。在设计数据库系统时,要把现实世界的事物通过认识和抽象转换为信息世界的概念模型,再把概念模型转换为机器世界的数据模型。
2、概念设计的主要步骤:分三步完成:(1)进行数据抽象,设计局部概念模式;(2)将局部概念模式综合成全局概念模式;(3)评审。
3、数据抽象:数据抽象的两种形式:聚集和概括:
聚集:其数学意义就是笛卡尔积的概念,通过聚集,形成对象之间的一个联系对象。如有一些对象:"老师,课程, 班级, 上课时间" ,通过聚集可以得到一个联系对象" 课程表" 。聚集表示的是"is_part_of"的关系。 概括:是从一类其他对象形成一个对象。如有桃树、李树、杏树等对象,我们通过概括或以得到一个对象" 树" 。概括表示的是"is_a"的关系,如" 李树" 是一种" 树" 。
4、基本ER 模型的扩展(领会) ER(实体联系) 模型是对现实世界的一种抽象,它的主要成份是实体、联系和属性。但是在现实世界中还有一些特殊的语义。需要扩展ER 模型的概念才能更好地模拟现实世界。 依赖联系:在现实世界中,有些实体对一另一些实体有很强的依赖关系,即一个实体的存在必须以另一实体的存在为前提。前者就称为" 弱实体" ,如在人事管理系统中,职工子女的信息就是以职工的存在为前提的,子女实体是弱实体,子女与职工的联系是一种依赖联系。在ER 图中用双线框表示弱实体。用箭头表示依赖联系。
子类:在现实中,存在某个实体类型中所有实体同时也是另一实体类型中的实体,此时,我们称前一实体类型为者的子类,后一实体类型称为超类。子类有一个很重要的性质继承性。在ER 图中,超类用两端双线框表示,并用加圈的线与子类相连。
,5、ER 模型的操作(领会)
ER 模型在数据库概念设计过程中经常需要进行变换,包括实体类型、联系类型和属性的分裂、合并和增删等。
实体类型的分裂包括垂直分割、水平分割。
注意在垂直分割时,键必须在分裂后的每个实体类型中出现。在联系类型合并时,所合并的联系类型必须是定义在相同的实体类型中。 6、采用ER 方法的数据库概念设计(领会)
采用ER 方法进行数据库概念设计分成三步进行:
首先设计局部ER 模式
然后把各局部ER 模式综合成全局ER 模式
最后对全局ER 模式进行优化
五、逻辑设计
1、概念设计的结果是得到一个与DBMS 无关的概念模式。而逻辑设计的目的是把概念设计阶段设计好的基本ER 图转换为与选用的具体机器上的DBMS 所支持的数据模式相符合的逻辑结构(包括数据库模式和外模式) 。
第六章_数据库保护
本章不是重点章节,主要内容包括数
据库保护的四种措施,数据库的恢复、并发控制、完整性和安全性。了解这些内容及其在SQL 语言中的实现方式。
一、数据库的恢复(领会)
1、事务的概念:事务是一个操作序列。这些操作要么什么都做,要么都不做,是一个不可分割的工作单位。事务以BEGIN
TRANSACTION 语句开始,以COMMIT(提交) 语句或ROLLBACK(回退或撤消) 语句结束。
一个程序的执行可通过若干事务的执行序列来完成。
2、事务的性质:原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性
(durability)。称为事务的ACID 性质。
通过教材的例子来理解事务的性质。 3、故障类型和恢复方法 故障类型恢复方法
事务故障应用程序自动进行恢复 系统故障重新启动时则恢复子系统将所有非正常终止的事务回退,恢复到正确状态。
介质故障通过DBMS 把其他务份磁盘或第三级介质中的内容再复制回来 4、恢复的基本原则和实现方法 恢复的基本原则很简单,就是" 冗余" ,即数据的重复存储。 实现方法有:
(1)定期对数据库进行复制或转储
(dump)。注意几个概念:静态转储、动态转储、海量转储和增量转储。 (2)建立" 日志" 文件。
(3)恢复。发生故障时有两种处理方法,如数据库已破坏,则由DBA 装入最近备份的数据库然后利用" 日志文件" 执行REDO(重做) 操作。如数据库未被损坏,但某些数据不可靠,则系统会自动执行UNDO 操作恢复数据。 5、运行记录优先原则(即先记录,再更新,先记完,再结束)
(1)至少要等相应的运行记录已经写入" 日志" 文件后,才能允许事务往数据库在写数据。
(2)直到事务的所有运行记录都已写入运行" 日志" 文件后,才能允许事务完成"END TRANSACTION"处理。 6、SQL 中的恢复操作, 可上机观察。
二、数据库的并发控制(领会) 1、并发控制带来的三类问题: (1)丢失更新的问题 (2)不一致分析问题
(3)"脏数据" 的读出。(在数据库技术中,未提交的随后又被撤消的数据为" 脏数据" 。)
2、为解决并发控制带来的问题,通常要采用封锁(locking)技术,常用的封锁有:排它型封锁(X封锁) 和共享型封锁(S封锁) 两种。
X 封锁的规则称为PX 协议,其内容为:任何企图更新记录R 的事务必须先执行LOCK
X(R)操作,以获得对该记录进行寻址
的能力,并对它取得X 封锁。如果未获得X 封锁,那么这个事务进入等待状态,一直到获准X 封锁,事务继续进行。
简记为:先锁X ,再执行,取不到,就等待。
PXC 协议:它由PX 协议及一条规则"X 封锁必须保留到事务终点(COMMIT或ROLLBACK)" 组成。 S 封锁的规则称为PS 协议:其内容为:任何要更新记录R 的事务必须先执行LOCK
S(R)操作,以获得对该记录寻址的能力并对它取得S 封锁。如果未获准S 封锁,那么这个事务进入等待状态,一直到获准S 封锁,事务才继续进行下去。当事务获准对记录R 的要封锁后,在记录R 修改前必须把S 封锁升级为X 封锁。
简记为:先锁S ,再执行,锁不到,就等待,若要修改则升X 。 PSC 协议:由PS 协议和" 将S 封锁保持到事务终点" 组成。
3、活锁:是指某个事务永远处于等待状态,得不到执行的现象。避免活锁的方法是采用" 先来先服务" 策略。 死锁:有两个或以上的事务处于等待状态,每个事务都在等待另一个事务解除封锁,它才能继续执行下去,结果任何一个事务都无法执行,这种现象就是死锁。
解除死锁的方法是由DBMS 中的" 死锁测试程序" 来检查,如发现死锁则
牺牲一个事务,并做回退操作, 解除它的所有封锁。 4、两段封锁法(识记)
两段封锁协议规定所有事务都要遵守下列规则:(1)在对任何数据进行读写操作之前,事务首先要获得对该数据的封锁;(2)在释放一个封锁之后,事务不再获得任何其他封锁。 针对课本的例子来理解。
三、数据库的完整性(领会) 1、数据库的完整性是指数据的正确性和相容性。数据库中数据发生错误,往往是由非法更新引起的。 数据库完整性是通过DBMS 的完整性子系统实现的,它有两个功能: (1)监督事务的执行,并测试是否违反完整性规则。
(2)如有违反,则采取恰当的操作,如拒绝、报告违反情况,改正错误等方法进行处理。
数据库完整性子系统是根据" 完整性规则集"
工作的,这些完整性规则包括:域完整性规则、域联系的规则、关系完整性规则(一个比一个大) 2、SQL 中的完整性约束
在SQL 中,表达完整性约束的规则有主键约束、外键约束、属性值约束和全局约束等多种形式。
主键约束:可用主键子句或主键短语PRIMARY KEY 来定义。
外键约束:可用外键子句来定义如 FOREIGN KEY (S#) REFERNCE S(S#)
,属性值约束:包括非空值约束(NOT NULL) 和基于属性的检查子句(CHECK) 及域约束子句 如CREAT DOMAIN AGE SMALLINT CHECK (value>10) 全局约束:包括基于元组的检查子句(CHECK)和断言(CREATE ASSERTION 断言名 CHECK 条件) 。
四、数据库的安全性(识记) 数据库的安全性是指保护数据库防止不合法的使用,以免数据的泄漏、非法更改和破坏。
1、安全性级别:包括环境级、职员级、OS 级、网络级和数据库系统级。 2、用户或应用程序使用数据库的方式称为权限,权限的种类: 访问数据权限:读、插入、修改、删除四种
修改数据库模式权限:索引(创建或删除索引) 、资源(创建新关系) 、修改(增删关系结构属性) 和撤消权限(撤消关系)
3、权限的转授与回收:画一个权限图,只要根结点到用户结点之间存在一条路径,那么它就有权限,回收时就是删去某些路径。 4、SQL 中的安全性控制
SQL 中有两个安全机制:一是视图机制、二是授权子系统。
视图是从一个或几个基本表导出的表,是虚表,视图定义后可以像基本表一样用于查询和删除,但其更新操作(增、删、改) 会受到限制。 视图机制把用户可以使用的数据定
义在视图中,这样用户就不能使用视图定义外的其他数据,从而保证了数据库的安全性。视图机制使系统具有三个优点:数据安全性、数据独立性和操作简便性。
授权机制可以保证用户只能进行其权限范围内的操作。
6、数据加密可更好地保证数据库中数据的安全性,采用加密算法给把源文变为密文来实现。常用的加密算法有" 替换方法" 和明键加密法。 同时,为保证数据库的安全,也应注意自然环境的安全性。 6楼 一闪 发表于:2005-3-16 11:05:38
第七章_分布式数据库系统
本章为非重点章,介绍了分布式数据库系统的基本概念、体系结构、查询处理、客户/服务器结构的分布式系统等内容,学习本章的目的在于扩展知识面,对分布式数据库系统有个简单的了解。全部内容的学习要求为达到识记层次。 一、概述
1、分布式DBS :是指数据存放在计算机网络的不同场地的计算机中,每一场地都有自治处理能力并完成局部应用;而每一场地也参与(至少一种) 全局应用程序的执行,全局应用程序可通过网络通信访问系统中的多个场地的数据。
2、分布式数据库系统包括两个重要
组成部分:分布式数据库和分布式数据库管理系统。
3、分布式数据库系统具有位置透明性和复制透明性,使用户看到的系统如同一个集中式系统。
4、分布式数据库系统的优点是: (1)具有灵活的体系结构
(2)适应分布式的管理和控制机构 (3)经济性能优越
(4)系统的可靠性高、可用性好 (5)局部应用的响应速度快
(6)可扩展性好,易于集成现有系统。 分布式数据库系统的缺点:
(1)系统开销大,主要花在通信部分 (2)复杂的存取结构,原来在集中式系统中有效存取数据的技术,在分成式系统中都不再适用
(3)数据的安全生和保密性较难处理。
5、分布式数据库系统分为三类:同构同质型DDBS ,同构异质型DDBS ,异构DDBS 。
同构同质型DDBS :是指各个场地都采用同一类型的数据模型,并且是同一型号数据库管理系统。 同构异质型DDBS :是指各个场地都采用同一类型的数据模型,但是数据库管理系统是不同型号的。 异构型DDBS :是指各个场地的数据模型是不同的类型。
二、体系结构
1、分布式数据存储,从数据分配和数据分片两个角度考察。
数据分配是指数据在计算机网络各场地上的分配策略。包括: 集中式:所有数据均安排在同一个场地上。
分割式:所有数据只有一份,分别被安置在若干个场地。
全复制式:数据在每个场地重复存储。
混合式:数据库分成若干可相交的子集,每一子集安置在一个或多个场地上,但是每一场地未必保存全部数据。
数据分片是指数据存放单位不是全部关系,而是关系的一个片段。也就是关系的一部分。包括:
水平分片:按一定的条件把全局关系的所有元组划分成若干不相交的子集,每个子集为关系的一个片段。 垂直分片:把一个全局关系的属性集分成若干子集,并在这些子集上做投影运算,每个投景为垂直分片。 混合型分片:将水平分片与垂直分片方式综合使用则为混合型分片。 2、分布式DBS 的体系结构分为四级:全局外模式、全局概念模式、分片模式和分配模式。
3、分布透明性指用户不必关系数据的逻辑分片,不必关心数据物理位置分配的细节,也不必关系各个场地上数据库数据模型。分布透明性可归入物理独立性的范围。包括三个层次:分片透明性、位置透明性和局部数据模型透明性。
4、DDBMS(分布式数据库管理系统)
其主要功能有:
(1)接受用户请求,并判定把它送到哪里,或必须访问哪些计算机才能满足该请求。
(2)访问网络数据字典,或者至少了解如何请求和使用其中的信息。 (3)如果目标数据存储于系统的多个计算机上,就必须进行分布式处理。 (4)通信接口功能,在用户、局部DBMS 和其他计算机的DBMS 之间进行协调。
(5)在一个异构型分布式处理环境中,还需提供数据和进程移植的支持。这里的异构型是指各个场地的硬件、软件之间存在一定差别。 DDBMS 组成:应包括以下四个子系统: 查询子系统 完整性子系统 调度子系统 可靠性子系统
5、对于分布式系统,压倒一切的性能目标是使通过网络传送信息的次数和数据量最小。
三、分布式查询处理
为了达到性能目标,在分布式系统中,通常采用基于半联接的查询优化策略。
数据在网络中传输时,如果以整个关系传输,然后将关系与另一场地关系进行联接,则传输数据量大,而在联接时并非每个数据都参与操作或有用,因此,考虑到不参与操作的值或
,无用的值不必经网络来回传输,则可以减少传输的数据量。这就是基于半联接的查询优化策略的基本思想。
四、客户/服务器式DBS
1、客户/服务器式DBS 是在客户/服务器计算机网络上运行的DBS ,这个计算机网络中,有一些计算机扮演客户,另一些计算机扮演服务者(即客户机/服务器) 。客户/服务体系结构的关键在于功能的分布。一些功能放在客户机(前端机) 上运行,另一些功能则放在服务器(后端机) 上执行。
2、客户/服务器式的分布式DBS 中,把DBMS 软件分成两级:客户级和服务器级。如某些场地可能只运行客户机软件,某些场地可能只运行专用的服务器软件,而在有一些场地可能客户机软件和服务器软件都运行。
3、在典型的分布式DBMS 中,软件模块分成以下三级:
(1)服务器级软件:负责场地的局部数据管理
(2)客户机软件:负责进行分布式管理,从数据字典中获取数据分布的信息,并处理涉及多场地的全局查询。
(3)通信软件:负责提供各场地间的数据传输。
第八章_具有面向对象特征的数据库系统
本章不是重点章,通过学习,可以了解两类具有面向对象特征的数据库系统的基本概念。仅此而已。 一、数据模型的演变过程 第一代数据库系统是70年代流行的层次、网状DBS 。第二代DBS 是80年代流行的关系数据库系统。 但是这两代数据库不能适应新的应用需要: 多媒体数据 空间数据 时态数据 复合对象 新一代的数据库系统从面向对象技术和数据库结构的角度出发。形成两种风格,一是" 面向对象的数据库系统"(OODBS),另一种是" 对象关系数据库系统"(ORDBS) 二、嵌套关系和复合对象 关系模式中的数据结构层次是" 关系---元组---属性" 而属性类型是一些基本的数据类型。元组是属性值的有序集合,关系是元组的无序集合,关系具有规范化结构(1NF).因此,传统关系模型称为" 平面关系模型" 。 若允许关系的属性值又可以是关系,而且可以嵌套,形成非1NF 关系,则形成嵌套关系模型。 若进一步放宽限制,允许关系中的属性可以是基本数据类型、结构类型(元组类型) 或集合类型(即关系类型) 。则形成复合对象模型。 三、对象关系数据库 在传统的关系数据模型基础上,提供元组、数组、集合一类更为丰富的数据类型以及处理新的数据类型操作的能力,这样形成的数据模型称为" 对象关系数据模型" ,基于对象关系数据模型的DBS 称为对象关系数据库系统(ORDBS)。 三、面向对象数据库 在面向对象程序设计语言(OOPL) C 基础上进行扩充,引入数据库技术,能操作持久数据,处理数据库。形成持久化C 系统。也就是面向对象数据库系统。