6.01 Dependency of Data 数据相关性
1 §6.01 Dependency of Data 数据相关性
数据库数据模型的设计理论 的核心是:数据相关性 。目的:保证数据库中数据能准 确描述客观世界,防止错误推导 产生依据:客观世界本身,即数据库描述的客观 事物性质是相关的 例:光的波长 一 色;学生学号 一 姓名 物体直径一周长 这些相关性如何在数据库模型设计中反映出来, 就是数据库的数据相关性要研究的问题 2
2 • 数据库数据模型的设计理论 的核心是:数据相关性 • 目的:保证数据库中数据能准 确描述客观世界,防止错误推导 • 产生依据:客观世界本身,即数据库描述的客观 事物性质是相关的 • 例:光的波长 颜色;学生学号 姓名; 物体直径 周长 • 这些相关性如何在数据库模型设计中反映出来, 就是数据库的数据相关性要研究的问题
Function dependency 数据相关性分型和值两个级别。 先讨论关系的型和值: 1.Type and value of Relation 关系的型是指关系的框架,包括: 关系的框架名 关系的属性名表 关系属性的值域表
3 一 .Function dependency 数据相关性分型和值两个级别。 先讨论关系的型和值: 1.Type and value of Relation 关系的型是指关系的框架,包括: • 关系的框架名 • 关系的属性名表 • 关系属性的值域表
例:关系名为R 属性名表为A1,…,AK 记为:R(A1,,Ax) 关系的值,是把若干元组添入关系框架后所得 的关系实例。通常称为当前关系、具体关系 或关系的一个实例。 关系的值会随用户对关系的操作而改变。它是 动态的,上述关系值的名称也强调了这种动 态性
4 例:关系名为R, 属性名表为A1 ,…,AK。 记为:R(A1 ,…,AK ) 关系的值,是把若干元组添入关系框架后所得 的关系实例。通常称为当前关系、具体关系 或关系的一个实例。 关系的值会随用户对关系的操作而改变。它是 动态的,上述关系值的名称也强调了这种动 态性
例:学生关系: S(S#,NAME,AGE,SEX) 初建时装入的当前关系,会随跳级、留级 的出现,用户插入、删除某些元组。从而 改变关系的值。使关系从一个当前关系变 为另一个当前关系。 注意关系的值是很易变的,改一个元组、 一个数据域的值,就是改变了关系的值
5 • 例:学生关系: S(S#,NAME,AGE,SEX) • 初建时装入的当前关系,会随跳级、留级 的出现,用户插入、删除某些元组。从而 改变关系的值。使关系从一个当前关系变 为另一个当前关系。 • 注意关系的值是很易变的, 改一个元组、 一个数据域的值, 就是改变了关系的值
2.function dependency of Relation (1)基于具体关系的函数相关性 定义:设有关系框架R(A1,A2,,AK)。其具体关 系r,以及属性集合U=A1,A2,,Ax的两个子集 X、Y,如果任何两个元组t,u只要 t[X灯=u[X],就有t[Y]=u[Y],则称X基于具 体关系r函数决定Y,记为X一Y,或称Y 基于具体关系r函数依赖X。记为:Y一X
6 2.function dependency of Relation (1)基于具体关系的函数相关性 定义:设有关系框架R(A1 ,A2 ,…,AK )。其具体关 系r,以及属性集合U=A1 ,A2 ,…,AK的两个子集 X、Y,如果任何两个元组t, u只要 t[X]=u[X],就有 t[Y]=u[Y],则称X基于具 体关系 r 函数决定Y,记为X Y,或称 Y 基于具体关系 r 函数依赖X。 记为:Y X
例:学生关系S S# name age sex s1 Wang 20 F s2 Li 23 M s3 Chen 21 M s4 Zhang 20 M s5 Zhang 20 F 其中:s#一 name; Age十sex; name age
7 • 例:学生关系 S • s# name age sex • s1 Wang 20 F • s2 Li 23 M • s3 Chen 21 M • s4 Zhang 20 M • s5 Zhang 20 F • 其中:s# name;Age sex; name age
注意: 只要求:凡t[x]=u[x]成立 则必有:t[Y门=u[Y门。 。故s# 一name,并不要求姓名唯一 ·基于具体关系的函数相关性并不稳定 ·例如: 对上述具体关系name一age成立,但s5若不是 ZHANG,则上述相关性也不存在了. 8
8 • 注意: • 只要求:凡t[x]=u[x]成立, 则必有:t[Y]=u[Y]。 • 故 s# name, 并不要求姓名唯一 • 基于具体关系的函数相关性并不稳定 • 例如: 对上述具体关系name age成立,但s5若不是 ZHANG , 则上述相关性也不存在了
(2)基于关系框架的函数相关性 定义:设有关系框架R(A1,A2,,A),其属性集 合U=A,A2,,Ak的两个子集X、Y,如果关系框 架的每一个可能的具体关系r都存在X一Y,或 Y一X,则称X基于关系框架R,函数决定Y, 或Y基于关系框架R,函数依赖X
9 (2)基于关系框架的函数相关性 • 定义:设有关系框架R(A1,A2,…,AK),其属性集 合U=A1,A2,…,AK的两个子集X、Y,如果关系框 架的每一个可能的具体关系r都存在X Y,或 • Y X , 则称X基于关系框架 R,函数决定Y , 或Y基于关系框架 R, 函数依赖X
几点注意: 。基于具体关系的函数相关性 只在帮助认识基于关系框架的 函数相关性方面才有意义。 ·这是由具体关系在操作中是动态变化的。 。 基于关系框架的函数相关性是否成立,不存在 一种证明方法,因为数据相关性事实上是现实 世界中事物性质之间相关性的一种断言 从K维空间点集的观点看关系,其关键字的 不存在性
10 几点注意: • 基于具体关系的函数相关性 只在帮助认识基于关系框架的 函数相关性方面才有意义。 • 这是由具体关系在操作中是动态变化的。 • 基于关系框架的函数相关性是否成立,不存在 一种证明方法,因为数据相关性事实上是现实 世界中事物性质之间相关性的一种断言 • 从K维空间点集的观点看关系 , 其关键字的 不存在性