关系模型规范化的有关理论与应用

合集下载

规范化理论

规范化理论

规范化理论规范化理论是指在数据预处理过程中通过一系列操作使数据达到一定的标准或要求的一种方法。

它在数据挖掘和机器学习中起到了重要的作用,可以解决数据不一致、错误、缺失等问题,并提高模型的准确性和稳定性。

规范化理论的核心思想是将不同范围的数值映射到统一的范围内,以便进行比较和处理。

它可以分为线性规范化和非线性规范化两种形式。

线性规范化是将原始数据缩放到[0,1]或[-1,1]之间的过程。

最常见的线性规范化方法是最小-最大规范化,即将原始数据减去最小值,再除以最大值与最小值的差。

这样可以保证数据的最小值被映射到0,最大值被映射到1,而中间的值则按照比例进行映射。

线性规范化的优点是简单易实现,可以有效地消除数据的最大最小值对模型的影响,但也存在着一定的局限性,对离群值比较敏感。

非线性规范化是将原始数据映射到非线性的范围内,以提高数据的可辨识性。

常见的非线性规范化方法有对数、指数和正态分布等。

例如,对数规范化可以将数据映射到对数尺度上,使数据的分布更加接近正态分布,适用于偏态分布数据的规范化处理。

非线性规范化可以更好地保持数据的相对关系,但也增加了规范化的复杂性。

规范化理论不仅可以用于数值型数据的规范化处理,也适用于类别型数据的规范化。

对于类别型数据,可以使用独热编码等方法将其转换成数值型数据,再进行规范化处理。

在实际应用中,规范化理论被广泛应用于数据挖掘、机器学习和统计分析等领域。

它可以提高数据的可读性和可解释性,减少模型的误差和不确定性,提高模型的鲁棒性和泛化能力。

同时,规范化也有助于数据的可视化和分析,提供更多的信息和见解。

总之,规范化理论是数据预处理中一种重要的方法,通过统一数据的尺度和范围,可以提高模型的性能和效果。

在实际应用中,需要根据具体的问题和数据特点选择适当的规范化方法,并对规范化的效果进行评估和调优。

数据库设计与范式理论

数据库设计与范式理论

数据库设计与范式理论数据库设计是指在数据库系统中按照一定的规范和要求,对数据进行组织、设计和管理的过程。

范式理论是建立在关系模型基础上,用于规范化数据库中数据的一套理论原则。

本文将介绍数据库设计以及范式理论的基本概念和应用。

一、数据库设计的概述数据库设计是数据库开发过程中的重要一环,它直接影响着数据库的性能、数据的完整性和安全性等方面。

一个合理的数据库设计可以提高系统的性能和可靠性。

1. 数据库设计的步骤数据库设计通常包括以下几个步骤:- 需求分析:明确数据库的需求,包括数据类型、数据量、数据关系等。

- 概念设计:根据需求分析结果,设计数据库的概念结构,主要包括实体、属性和关系等。

- 逻辑设计:将概念设计转化为逻辑模型,通常使用ER图或UML 类图表示。

- 物理设计:将逻辑模型转化为物理模型,确定数据存储结构和索引等细节。

- 实施与维护:根据物理设计结果,创建数据库,进行数据导入、备份和恢复等操作。

2. 数据库设计的原则数据库设计应遵循以下原则:- 数据库的一致性:确保数据库中的数据不重复、不冗余。

- 数据库的完整性:保证数据的完整性,防止数据丢失或损坏。

- 数据库的性能:优化数据库查询和更新操作,提高系统性能。

- 数据库的安全性:采取措施保护数据库免受未授权访问和数据泄露的风险。

二、范式理论的基本概念范式理论是数据结构中的一个重要理论框架,主要用于规范化数据库中的数据。

下面介绍数据库设计中常用的三个范式:第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。

1. 第一范式(1NF)第一范式要求数据库表中的每个字段具有原子性,即每个字段不可再分。

同时,每个字段在表中的位置也是固定的。

2. 第二范式(2NF)第二范式要求数据库表中的每个非主键字段完全依赖于主键,即非主键字段不能部分依赖于主键。

如果存在部分依赖,需要将其拆分为多个表。

3. 第三范式(3NF)第三范式要求数据库表中的每个非主键字段不依赖于其他非主键字段,即非主键字段之间不存在传递依赖关系。

第六章 关系模式规范化理论

第六章 关系模式规范化理论

第6章关系模式的规范化理论关系数据库的规范化设计是指面对一个现实问题,如何选择一个比较好的关系模式集合。

规范化设计理论对关系数据库结构的设计起着重要的作用。

关系模型有严格的数学理论基础,因此人们就以关系模型为作为讨论对象,形成了数据库逻辑设计的一个有力工具――关系数据库的规范化理论。

本章内容(1)关系模式的冗余和异常问题。

(2)FD的定义、逻辑蕴涵、闭包、推理规则、与关键码的联系;平凡的FD;属性集的闭包;推理规则的正确性和完备性;FD集的等价;最小依赖集。

(3)无损分解的定义、性质、测试;保持依赖集的分解。

(4)关系模式的范式:1NF,2NF,3NF,BCNF。

分解成2NF、3NF模式集的算法。

(5)MVD、4NF、5NF的定义。

一,关系模式设计中的问题1.什么是好的数据库构建好的,合适的数据库模式,是数据库设计的基本问题a) 体现客观世界的信息b) 无过度的冗余c) 无插入异常d) 无删除异常e) 无更新复杂如书上的S_C_G关系。

假设需要设计一个学生学习情况数据库StuDB。

下面我们以模式S_C_G(Sno,Sname,Dname,Age,Cno,Cname,Score,Pre_cno)为例来说明该模式存在的问题。

下表是其一个实例。

3冗余度大:每选一门课,他本人信息和有关课程信息都要重复一次。

4插入异常:插入一门课,若没学生选修,则不能把该课程插入表中。

5删除异常:如S11号学生的删除,有一门只有他选,会造成课程的丢失。

6更新复杂:更新一个人的信息,则要同时更新很多条记录。

还有更新选修课时也存在这样的情况。

2.异常的原因:数据信赖的约束3.解决方法:数据库设计的规范化:分解,每个相对的独立,依赖关系比较单纯,如分解为3NF 我们采用分解的方法,将上述S_C_G分解成以下三个模式:S(Sno,Sname,age,Dname)C(Cno,Cname,Pre_cno)S_C(Sno,Cno,Score)4.规范化设计理论包括三个内容:i> 数据信赖---- 核心,研究数据之间的联系ii> 范式---- 关系模式的标准iii> 模式设计方法---- 自动化设计的基础二,函数依赖(Functional Dependency,FD)1. 函数依赖的定义:(还有非函数的依赖?,什么是函数?给出一个值能唯一确定另外一个值?映射:一对一,多对一,一对多?)定义:函数依赖是指一个或一组属性可以(唯一)决定其它属性的值。

关系模型规范化

关系模型规范化

规范化的必要性
❖ 关系模式的简化定义 ❖ 数据依赖 ❖ 数据依赖对关系模式影响
关系模式的简化定义
关系模式由五部分组成,即它是一个五元组:
R(U, D, DOM, F)
R: 关系名 U: 组成该关系的属性名集合 D: 属性组U中属性所来自的域 DOM: 属性向域的映象集合 F: 属性间数据的依赖关系集合
第三范式 (3NF)
➢ 采用投影分解法将一个2NF的关系分解为多个3NF的 关系,可以在一定程度上解决原2NF关系中存在的插入异 常、删除异常、数据冗余度大、修改复杂等问题。
➢ 将一个2NF关系分解为多个3NF的关系后,仍然不能 完全消除关系模式中的各种异常情况和数据冗余。
关系模式的规范化
1. 规范化的必要性 2. 规范化 3. 小结
数据依赖对关系模式的影响
把这个单一模式分成3个关系模式: S(Sno,Sdept,Sno → Sdept) SC(Sno,Cno,Grade,(Sno,Cno) → Grade) DEPT(Sdept,Mname,Sdept→ Mname)
关系模式的规范化
1. 规范化的必要性 2. 规范化 3. 小结
➢ 分解后的关系模式S-D与D-L中不再存在传递依赖
第三范式(3NF)
S-D的码为Sno, D-L的码为Sdept
S-D
D-L
Sno
Sdept
Sdept
Sloc
S-L(Sno , Sdept , Sloc) ∈ 2NF
S-L(Sno , Sdept , Sloc) ∈ 3NF S-D(Sno ,Sdept) ∈ 3NF D-L(Sdept , Sloc)∈ 3NF
关系模式的简化表示
➢ 关系模式R(U, D, DOM, F)

关系模型的概念和定义并解释

关系模型的概念和定义并解释

关系模型的概念和定义并解释关系模型是数据管理领域中最常用的一种数据模型,它用于描述和组织数据在数据库中的存储和关联方式。

关系模型是基于关系代数和关系演算理论的数学模型,其核心思想是将数据组织为二维的表格形式,由行和列来表示关系的元组和属性。

本文将从关系模型的概念、定义、特点和基本结构等方面阐述关系模型的本质和原理。

1.概念和定义关系模型是由埃德加·科德提出的,旨在解决传统的人工记录方式的缺点。

关系模型的核心是关系,它是指在一定的关系模式(Schema)下,由n个元组组成的二维表格,每个元组表示一个实体,每个属性表示一个特征。

关系模式是关系的逻辑模型,用于描述关系中的属性和约束条件。

关系模式可以看做是关系的模板,其中包括属性的名称、类型、长度等。

关系模型的基本定义包括以下几个要素:-域(Domain):数据元素的集合,用来描述属性的取值范围。

每个属性都需要指定一个域,比如姓名属性的域可以是字符串的集合,年龄属性的域可以是整数的集合。

-属性(Attribute):关系表格中的列,用来描述实体的特征。

每个属性都有一个名称和所属的域。

-元组(Tuple):关系表格中的行,用来描述一个实体的具体信息。

-关系(Relation):关系模型的基本单位,由关系表格组成,每个关系都有一个名称(relation name)和一个关系模式(relation schema)。

2.关系模型的特点关系模型具有以下几个核心特点:-基于关系代数和关系演算理论:关系模型的设计基础是关系代数和关系演算理论,这两者是描述和操作关系的数学工具。

-结构化数据:关系模型使用结构化的表格形式来组织数据,每个表格都有明确定义的列和行,使数据的结构清晰可见。

-独立于物理存储:关系模型与实际的物理存储方式无关,可以在不同的数据库系统中实现。

-数据的唯一性:关系模型要求每个关系中的元组都是唯一的,不能存在重复的数据。

-数据的一致性和完整性:关系模型支持定义各种约束条件来保证数据的一致性和完整性,比如主键约束、外键约束、唯一约束等。

关系规范化理论在数据库设计中的应用

关系规范化理论在数据库设计中的应用
黼 fn a
a l l 由 o 州 衄 拿 t f岫 蛳 . b L h a J 0 陷ete 聃 t吕5 t^ ae
a d 眦a 酶 时 舶P 地a I 州 l a g 昭d 帕 七 。
1关系数据库的设计 目 . 标
在关 系数据 库中 ,一个 数据 是由 一 组 关 系模式组 成的 ,关 系数据庠 的设计 目标就 是要从各种可能的 关系模式组合 中 选取 一组关暴漠式来构成一个数据库模式 . 使我们既不必存 储不必要的重 复信 息,叉 可以方便地 获取 信息。一般而言.这样 的 数据库模式就是 好的数据 库模 式。 I : 面我 们结台一个实侧来评价数 据库 模式 设计的 好与坏 .例如有一个反映 轮船 信息 勺 微据 库、 由以下 8 个属性组成:船 号、船名 力 部件 号、揶件名 型号 重量, 量, 量 将遗8 个属性构造成一 个合适的共 系模式, 从而构造一个荧系数据库 ,典构造方法很 多。最 简单的是 .将 8个属性组成 &下关 n
等价 的关系模式来代 替原有的关 系模式 潲除数据库依赖中的不舍理部分,使得一 个 关系仪描述一 个实体或者实体间的一种 联 系.这一过程 必须在保证无捅连接性 . 保持 函数依赖的前提下进行 ,即确保 破 坏原 来的数据 .井町将分解后的关系通过 自然连接恢复成原有关系 .具体的 蜕,规 范 化的过程就是按不同的范式 ,将一个关 系模式不断分解成 多个关系模式,最终达 到一个关 系模式 只描述一个实俸或者实体 间的一种联 系的 目标 .下面结合实例来说 明如何耐关 系模式进 行规范他 。 22 1 . . 规范化为 f NF) l 规范化的第一步就是消除关 系模式 中 的非原子属性 ,例如 : 系Rf 关 系名称 , 高级 职 称人数) 中,高级职称包括 教授 和副教 授 .规 范成 为 f N l F)的方法一般是将高 级职称 人数 分为教授人数和副教授人数两

第一章 数据库系统基础知识 答案

第一章 数据库系统基础知识   答案

第一章数据库系统基础知识一、选择题2000秋:1.根据关系模型的有关理论,下列说法中不正确的是 D 。

A.二维表中的每一列均有唯一的字段名B.二维表中不允许出现完全相同的两行C.二维表中行的顺序,列的顺序可以任意交换D.二维表中行的顺序,列的顺序不可以任意交换2001年(春)2. Visual FoxPro是一个__B____。

A. 数据库系统B. 数据库管理系统C. 数据库D. 数据库管理员3. 实体模型反映实体及实体之间的关系,是人们的头脑对现实世界中客观事物及其相互联系的认识,而_ ____是实体模型的数据化,是观念世界的实体模型在数据世界中的反映,是对对现实世界的抽象。

A. 数据模型B. 物理模型C. 逻辑模型D. 概念模型2006年(春)4. 数据库系统与文件系统的最主要区别是 DA.数据库系统复杂,而文件系统简单B.文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件C.文件系统管理的数据量较小,而数据库系统可以管理庞大的数据量D.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决5. 关系模型的基本结构是___C______。

A.树形结构B.无向图C.二维表D.有向图2009秋:6. 目前数据库管理系统(DBMS)有许多不同的产品。

在下列DBMS产品中,不属于(Microsoft)公司开发的是 DA. Visual FoxProB. AccessC. SQL ServerD. Oracle2009年春7. 在下列叙述中,错误的是 C 。

A.关系型数据库中的每一个关系都是一个二维表B.在关系模型中,运算的对象和运算的结果都是二维表C.二维表中不允许出现任何数据冗余D.Visual FoxPro是一种关系型数据库管理系统产品8.关键字是关系模型中的重要概念。

当一个二维表(A表)的主关键字被包含到另一个二维表(B表)中时,它就称为B表的 C 。

A.主关键字B.候选关键字C.外部关键字D.超关键字9. 在关系模型中,关系运算分为传统集合的关系运算和专门的关系运算。

关系数据库规范化理论

关系数据库规范化理论

第4章关系数据库规范化理论数据库设计的一个最基本的问题是怎样建立一个合理的数据库模式,使数据库系统无论是在数据存储方面,还是在数据操作方面都具有较好的性能。

什么样的模型是合理的模型,什么样的模型是不合理的模型,应该通过什么标准去鉴别和采取什么方法来改进,这是在进行数据库设计之前必须明确的问题。

为使数据库设计合理可靠、简单实用,长期以来,形成了关系数据库设计理论,即规范化理论。

它是根据现实世界存在的数据依赖而进行的关系模式的规范化处理,从而得到一个合理的数据库设计效果。

本章首先说明关系规范化的作用,接着引入函数依赖和范式等基本概念,然后介绍关系模式等价性判定和模式分解的方法,最后简要介绍两种数据依赖的概念。

4.1 关系规范化的作用4.1.1问题的提出从前面的有关章节可知,关系是一张二维表,它是涉及属性的笛卡尔积的一个子集。

从笛卡尔积中选取哪些元组构成该关系,通常是由现实世界赋予该关系的元组语义来确定的。

元组语义实质上是一个n目谓词(n是属性集中属性的个数)。

使该n目谓词为真的笛卡尔积中的元素(或者说凡符合元组语义的元素)的全体就构成了该关系。

但由上述关系所组成的数据库还存在某些问题。

为了说明的方便,我们先看一个实例。

【例4.1】设有一个关于教学管理的关系模式R(U),其中U由属性Sno、Sname、Ssex、Dname、Cname、Tname、Grade组成的属性集合,其中Sno的含义为学生学号,Sname为学生姓名,Ssex为学生性别,Dname为学生所在系别,Cname为学生所选的课程名称,Tname 为任课教师姓名,Grade为学生选修该门课程的成绩。

若将这些信息设计成一个关系,则关系模式为:教学(Sno,Sname,Ssex,Dname,Cname,Tname,Grade)选定此关系的主键为(Sno,Cname)。

由该关系的部分数据(如表4-1所示),我们不难看出,该关系存在着如下问题:1. 数据冗余(Data Redundancy)●每一个系名对该系的学生人数乘以每个学生选修的课程门数重复存储。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第37卷第4期 2003年4月上海交通大学学报JOU RNAL O F SHAN GHA I J I AO TON G UN I V ER S IT YV o l .37N o.4 A p r .2003 收稿日期:2002205216作者简介:孙昌言(19492),男,安徽芜湖市人,副教授,硕士,研究方向为管理信息系统、经济定量分析. 文章编号:100622467(2003)0420523204关系模型规范化的有关理论与应用孙昌言(同济大学经济与管理学院,上海200092)摘 要:在函数依赖的范畴内对关系模型的规范化理论及其运用问题进行了研究,证明了关于Boyce 2Codd (BC )范式两个定义的等价性,提出了关于BC 范式的一个实用的判定定理并加以证明.提出了一整套实用关系规范化的具体方法,有助于关系规范化理论的进一步完善及其学习和运用.关键词:关系规范化理论;函数依赖;Boyce 2Codd 范式;判定定理;规范化中图分类号:T P 311.131 文献标识码:AThe o ry a nd App lica tion a bout No r m a liza tion of Re la tion M ode lSUN Chang 2y an(Schoo l of Econom ics and M anagem en t ,Tongji U n iv .,Shanghai 200092,Ch ina )A bs tra c t :W ith in the catego ry of functi on dep endency ,the theo ry and app licati on of no r m alizati on of rela 2ti on m odel w ere studied .A t first ,the equ ivalency of the tw o defin iti on s abou t Boyce 2Codd no r m al fo r m w as p roved .T hen ,a u sefu l judgem en t theo rem abou t Boyce 2Codd no r m al fo r m w as advanced and p roved .A t last ,a set of p ractically sp ecific m ethods of relati on no r m alizati on w ere system atically pu t fo r w ard .T hese studies can give som e help to the fu rther p erfecti on of the relati on no r m alizati on theo ry and its app li 2cati on s .Ke y w o rds :relati on no r m alizati on theo ry ;functi on dep endency ;Boyce 2Codd no r m al fo r m (BCN F );judgem en t theo rem ;no r m alizati on 关系模型是目前应用得最为广泛的数据库模型,其规范化理论是关系型数据库逻辑设计的基础.信息系统开发人员对关系规范化的运用能力将直接影响所设计数据库系统的质量,进而影响整个系统的性能.范式的概念最早是由Codd 提出的,他于1971~1972年发表的一系列论文中系统地提出了1范式(1N F )、2N F 、3N F 的标准,并深入探讨了关系进一步规范化的问题,由此奠定了关系规范化理论的基础.1974年,Codd 等提出了BCN F ;1976年,Fagin 又提出了4N F [1].虽然关系规范化的理论研究发展至今已经相当完备,但仍有进一步完善和充实的必要.在函数依赖的范畴内,BC 范式已达到完美的程度(已完全消除了有害的函数依赖关系),本文将在函数依赖的范畴内对关系规范化的理论和运用展开进一步研究.1 BC 范式的两个定义及等价性证明定义1 对1N F 的关系模式(以下简称关系)R 中的任意两个属性集X 、Y ,若有X →Y ,且Y ⁄X ,则X 必含有R 的关键字(也称键或码).称具有以上性质的关系是BC 范式[2].这是使用得最为普遍的关于BCN F 的定义,它说明在BCN F 中只有关键字才能是函数决定因素.其实,BCN F 还可以有另一个等价定义,该定义直观地指出了BCN F 与3N F 的联系与区别.定义2 设R是1N F的,若R中的每个属性都不传递函数依赖于R的任一关键字,则R是BC范式的.定义2表明,BCN F排除了所有属性(包括主属性)对关键字的传递函数依赖,而非BCN F的3N F 关系仅排除了非主属性对关键字的传递函数依赖,仍然存在主属性对关键字的部分或传递函数依赖,因而仍然存在数据冗余度大、插入与删除异常、修改困难等问题.可见,BCN F比3N F对有害的函数依赖分离得更为彻底.下面采用反证法证明这两个定义的等价性.(1)设R满足定义1的条件,倘若R不满足定义2的条件,则存在R的关键字X、属性A和属性集Y,使X→Y,Y→X,Y→A,A∈ Y,即A传递函数依赖于X.因为Y→X,故Y不含有R的关键字.与定义1条件矛盾.(2)设R满足定义2的条件,倘若R不满足定义1的条件,则存在R中的属性A和属性集Y,有Y→A,A∈ Y,且Y不含有R的关键字.设X为R的任一关键字,则X→Y,Y→X(Y不含有关键字), Y→A,A∈ Y,则A传递函数依赖于关键字X,与定义2条件矛盾.等价性证毕.2 关于BC范式的一个判定定理定理 设关系R是3N F的,且R的关键字中至多只有一个是合成关键字,则R必为BCN F的.证明 本定理中R的关键字中至多只有一个是合成关键字的条件,可以分解为以下3种情况并分别加以证明.(1)设R是3N F的,且R的所有关键字都不是合成关键字.记B1,R2,…,B k(k≥1)为R的所有关键字(主属性).倘若R不是BCN F,则由定义1,存在R中的属性A和属性集Y,有Y→A,A∈ Y,且B i∈ Y,从而Y→B i,故A必为非主属性,从而有非主属性A传递函数依赖于关键字B1,与R为3N F矛盾,故R必为BCN F的.(2)设R是3N F的,且R仅有一个关键字X.倘若R不是BCN F,由定义1,存在R中的属性A 和属性集Y,有Y→A,A∈ Y,且X⁄Y.①若A是非主属性,则A传递函数依赖于X,从而R不是3N F 的,与条件矛盾.②若A是主属性,则A∈X,又由A∈ Y,且Y→A,令X1=(X-A)∪Y,则X1→X-A,且X1→Y,从而X1→A,由函数依赖的“并规则”[3]可得:X1→(X-A)∪A=X,故X1必含有R 的某个关键字X2.由X1的构造知,A∈ X2,但A∈X,从而X2≠X,R有两个不同的关键字X与X2,与条件矛盾,故R必是BCN F的.(3)设R是3N F的,且有多个关键字,但其中仅有一个是合成关键字.设X是R的合成关键字.倘若R不是BCN F,则存在R中的属性A和属性集Y,有Y→A,A∈ Y,且Y不含有关键字,故Y→ X.①若A是非主属性,则A传递函数依赖于关键字X, R不是3N F的,与条件矛盾.②若A是主属性,则A 不可能是关键字(Y→A,Y不含有关键字),故A∈X.又由A∈ Y,且Y→A,令X1=(X-A)∪Y,则X1→X-A,且X1→Y,从而X1→A,同样可得:X1→(X-A)∪A=X,故X1必含有R的某个关键字X2.由X1的构造知,A∈ X2,但A∈X,故X2≠X.又因X与Y中都不可能含有R的非合成关键字,再由X1的构造,可知X2不可能是非合成关键字,从而X2必是合成关键字,即R有两个不同的合成关键字X与X2,与条件矛盾.故R必是BCN F的,定理证毕.本判定定理具有以下应用价值:①由本定理可知,一个非BCN F的3N F关系中必含有多个合成关键字,了解这一点对指导关系型数据库系统的逻辑设计是非常有益的,即应避免在一个关系中包含多个合成关键字的情况;②可以在大多数情况下很直观地判定一个3N F的关系已是BCN F的;③根据本定理的结论,可得到将非BCN F的3N F关系规范化为BCN F的方法和步骤.上述判定定理给出的是BCN F的一个充分条件,尚待同行专家们进一步研究的是:它是否还可能是必要条件?或者仅仅只是一个充分条件?若要证明它不是必要条件,就需要找到一个有多个合成关键字的BCN F的反例.由于关系中各属性间的函数依赖联系本质上属于语义定义问题,因此,要证明它是否是必要条件可能是及其困难的.但无论结果如何,都不会影响本判定定理的上述应用价值.3 关系规范化的方法和步骤关系的规范化,就是将一个低一级范式的关系,通过投影分解转换成若干高一级范式关系的过程,投影分解中,必须确保所得到的多个高一级关系之间有外部关键字作为相互联系的桥梁.下面是笔者根据范式的理论,提出的一整套将1N F的关系逐步规范化为BCN F的原理、方法和具体步骤.3.1 将非2NF的关系分解为2NF如果关系R中存在非主属性对关键字(合成关键字)的部分函数依赖,则R就不是2N F的.由此可425 上 海 交 通 大 学 学 报第37卷 知,要将R规范为若干2N F的关系,就应当从部分函数依赖的现状出发,以关键字的各真子集可完全函数决定的各非主属性作为投影分解的基础,达到消除非主属性对关键字部分函数依赖的目标,具体步骤如下:(1)设关系R不是2N F的,X为R的合成关键字,分类列出可由X的各真子集X i完全函数决定的各非主属性集Y i(i=1,2,…,m,m≥1).若R有多个合成关键字,则同样处理.(2)在R中剔除所有Y i,得到一个关系R0,X 仍然是它的关键字.由于R0中已剔除了所有部分函数依赖于关键字的非主属性,故必是2N F的.(3)分别将步骤(2)中剔除的非主属性集Y i加上完全函数决定它们的R中的主属性集X i后,就得到其余的关系R i(i=1,2,…,m,m≥1).显然,X i 是R i的关键字,且是R0的外部关键字,由于R i中的Y i都完全函数依赖于其惟一的关键字X i,故也都是2N F的.3.2 将非3NF的2NF关系分解为3NF如果关系R中存在非主属性对关键字的传递函数依赖,则R就不是3N F的.由此可知,要将R 规范为若干3N F的关系,就应当从传递函数依赖的现状出发,以传递函数依赖于关键字的各非主属性集为基础,对R进行投影分解,达到消除非主属性对关键字传递函数依赖的目标,具体步骤如下:(1)设R是2N F但不是3N F的,X是R的一个关键字,分别按不同的传递中介Z i列出所有传递函数依赖于X的Y i(i=1,2,…,m,m≥1),其中,Z i 是可直接函数决定Y i的最小属性集.若R有多个关键字,则同样处理.(2)在R中剔除所有Y i,得到一个关系R0,X 仍然是它的关键字.显然,R0中已不存在非主属性对关键字的传递函数依赖,故是3N F的.(3)分别将步骤(2)中剔除的非主属性集Y i加上R中直接函数决定它们的Z i后,就得到其余的关系R i(i=1,2,…,m,m≥1).显然,Z i是R i的关键字,且是R0的外部关键字.由于R i中的所有Y i都直接函数依赖于其惟一的关键字Z i,故也都是3N F 的.3.3 将非BCNF的3NF关系分解为BCNF由所给判定定理可知,若关系R是3N F但不是BCN F的,则R至少有2个合成关键字.再由BCN F 的定义2知,R中必存在某个合成关键字的真子集A i可由另一合成关键字X中的最小真子集X i(i=1,2,…,m,m≥1)函数决定(通常A i与X i是相互函数决定的).以上述A i和X i为基础对R进行投影分解,可达到消除主属性对关键字的部分(也是传递)函数依赖,具体步骤如下:(1)在R中保留该合成关键字X,剔除上述主属性集A i后,得到第1个关系R0.此时X仍是R0的关键字.显然,R0中已不存在主属性对关键字的部分或传递函数依赖,故已是BCN F的.(2)分别将步骤(1)中被剔除的属性集A i加上函数决定它们的X i后得到其余的关系R i,显然X i 是R i的关键字,且是R0的外部关键字(通常A i也是R i的关键字).若R i中仍存在主属性对关键字的部分函数依赖,则重复上述步骤.下面举例说明上述规范化的实际步骤.设有一个客户定货合同关系R(合同号,签定日期,客户号,客户名,地址,电话,产品号,产品名,计划单价,销售单价,数量,交货期).其中,一份合同对应一个客户,但一个客户可签定多份合同;一份合同中可定购多种产品;产品名惟一,客户名不惟一;各产品的计划单价是确定的,但在不同合同中的销售单价可以不同;同一合同中各产品可以有不同的交货期,但一种产品只有一个交货期.对R的规范化步骤如下:(1)R有2个合成关键字(合同号,产品号)和(合同号,产品名),其中:合同号→(签定日期,客户号,客户名,地址,电话);产品号→计划单价,故R 不是2N F的.从R中剔除所有部分函数依赖于关键字的非主属性集(签定日期,客户号,客户名,地址,电话)和计划单价后,得到一个2N F的合同内容关系R1(合同号,产品号,产品名、销售单价,数量,交货期),关键字仍然是(合同号,产品号)与(合同号,产品名).将被剔除的非主属性集(签定日期,客户号,客户名,地址,电话)加上完全函数.决定它的合同号后,就得到第2个2N F的合同客户关系R2(合同号,签定日期,客户号,客户名,地址,电话),关键字是合同号,它也是R1的外部关键字.将被剔除的非主属性计划单价加上完全函数决定它的产品号后,就得到第3个2N F的产品定价关系R3(产品号,计划单价),关键字是产品号,它也是R1的外部关键字.在关系R1与R3中,已不存在非主属性对关键字的传递函数依赖,故已是3N F的.(2)在关系R2中,因为合同号→客户号,客户号→ 合同号,客户号→(客户名,地址,电话),故R2525 第4期孙昌言,等:关系模型规范化的有关理论与应用不是3N F的,可作进一步分解如下:在R2中剔除传递函数依赖于关键字合同号的非主属性集(客户名,地址,电话)后,得到一个3N F 的合同头关系R21(合同号,签定日期,客户号),关键字仍然是合同号;将被剔除的非主属性集(客户名,地址,电话)加上直接函数决定它的客户号后,就得到一个3N F的客户关系R22(客户号,客户名,地址,电话),关键字是客户号,它也是R21的外部关键字.在关系R21、R22、R3中都仅有一个关键字,由判定定理知,它们都已是BCN F.(3)关系R1中有2个合成关键字(合同号,产品号)与(合同号,产品名),其中产品号→产品名,但产品号不含关键字,故R1不是BCN F的,可作进一步分解如下:在R1中剔除主属性产品名后,得到一个BCN F 的合同定货关系R11(合同号,产品号,销售单价,数量,交货期),关键字是(合同号,产品号).将被剔除的产品名加上函数,决定它的产品号,就得到第2个BCN F的产品名关系R12(产品号,产品名),它有2个非合成关键字:产品号和产品名.其中,产品号也是R11的外部关键字.通过以上投影分解过程就将1N F的关系R分解为5个BCN F的关系:R11、R12、R21、R22、R3.由本例的投影分解过程可知,上述关系规范化过程的原理、方法与步骤是非常清晰且容易学习理解和掌握运用的.参考文献:[1] John r m ati on system:theo ry and p ractice[M].2nd ed.N ew Yo rk:John W iley&Sons,1979.128-135.[2] 王燮臣,邬文华.管理信息系统[M].杭州:浙江大学出版社,1989.[3] 施伯乐.程序员级高级程序员级软件知识[M].第2版.北京:清华大学出版社,1996.下期发表论文摘要预报用神经网络对柴油机振动主动控制的试验研究孙承顺1, 包继华1, 张建武1, 黄金娥2(1.上海交通大学机械与动力工程学院,上海200030;2.哈尔滨工程大学动力工程学院,哈尔滨150001)摘 要:将神经网络技术应用于柴油机振动主动隔离,构造了一种振动主动控制(AV C)系统,并采用液压执行机构在柴油机双层隔振试验台上进行试验研究.结果表明,将神经网络控制技术用于振动主动控制具有一定的可行性,在某些主要频率下振动可衰减8dB左右.轮胎 路面接触问题分析徐延海, 程东升, 贾丽萍, 张建武(上海交通大学机械与动力工程学院,上海200030)摘 要:在研究轮胎 路面静态接触问题中,采用了直接将接触面间约束条件作为边界条件施加到系统中的求解方法.该方法避免了应用传统的L agrangian乘子法引起的系统变量数的增加,同时也避免了由于罚函数法中罚数选取不当给系统数值的稳定性造成的影响.数值分析表明,该方法能够准确有效地对轮胎 路面的接触问题进行分析.625 上 海 交 通 大 学 学 报第37卷 。

相关文档
最新文档