热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

关系数据库的代数性质(一)

                     

 

                                                                 
关系数据库的代数性质
                                                                  前言
       本文只是尝试利用代数的方法推倒关系数据库的一些性质。下面简要回顾一下关系数据库的发展: 1) CODASYL于1962发表“信息代数”一文。 2) E.F.Codd从1970起发表了序列的论文。 3) 20世纪70年代末的实验系统System R 和Ingres。 4) 从20世纪80年代逐步走向成熟。        本文的一些想法是受关系数据库代数性质的启发,同时也避免抄袭前人的成果,写本文纯属回顾大学接受的代数知识。                            一 基本定义       从数学的角度来讲,一个关系数据库表是一个向量的集合。为了研究关系数据库的代数性质,有必要先做一些基本的定义。       定义(1):              
S = {x| x

D1X D2…X…DN}

Di(1<=i <=N)是x第i分量的值域。称这样的
S是一个
N元关系集合。即若
x

S,则
x=(d1,…,di,…, dN),其中
di

Di。         定义(2):        称
0i
Di(1<=i <=N)
NULL值。        定义(3):               对于
x=(d1,…,di,…, dN),称
x
δ
(i)
=( 01,…, 0i-1, di, 0i+1,…0N)
x
Di(1<=i <=N)上的投影,其中
di=0i。               称
x
δ
(i)…
δ
(j)
x
Dix…Dj上的投影,其中
x的分量
di

0i,…, dj

0j,
              并且
1<=i<=j<=N
      定义(4):        定义映射
F
F满足以下的关系,即:        
F(x)=
x
δ
(i)…
δ
(j)
x
δ
(i)…
δ
(j)
x
Dix…xDj上的投影,
x

S。       由于
x
δ
(i)…
δ
(j)
x
Dix…xDj上的投影是惟一的,所以很容易验证
F是一个映射。     定义(5)    对于任意的投影域
D=
Dkx…xDp,构造集合
S(D)={ Dk,…, Dp},称投影域
Dkx…xDp ix…xDj ,如果
S(Dkx…xDp)ix…xDj)。其中集合的
<是真子集关系。    定义(6)    对于投影域
Dkx…xDp,称这样的运算
τ:   
τ
(x)

Dkx…xDp
x

S    为
S
Dkx…xDp的投影运算。 接着,先利用定义(4)来构造一个集合
J:    
J={
x

S | φ(F(x))=x
τ
(F(x))

Dix…Dj},
φ
F的反函数。    现在,将对
J的各种情况解释。 1)若投影域是
Dix…xDj,如果
J=Φ,且
S的个数大于1,那么
S的元素在
Dix…xDj的投影重复。如果
i=1
j=N那么的
S元素是重复的。 2)若投影域是
Dix…xDj,如果
J<
S(真子集关系
),且
S的个数大于1,那么
S的元素在
Dix…xDj的投影部分重复。如果
i=1
j=N那么的
S元素部分重复。 3)若投影域是
Dix…xDj,如果
J=
S,那么
S的元素在
Dix…xDj的投影不重复。如果
i=1
j=N那么的
S元素不重复。 4)在3)的基础上,称
Dix…xDj是关键投影域。 定义(7) 极小关键投影域: 称
Dix…xDj是极小关键投影域,对于任意的投影域
D,根据定义(5)有:
Dix…xDj,且
(1)J={
x

S | φ(F(x))=x
τ
(F(x))

D}
(2)J<
S 称极小关键投影域是
S的关键字域,称其他不存在极小关键投影域的投影域为非关键字域。 由极小关键投影域的定义,很显然可以知道对于任何的关键投影域必存在极小关键投影域。 思路受到阻塞,并且在思考写下去的意义!如果要写下去,必须写什么方面的内容? 待续&#8230;&#8230;!!!!!!!!!!!!!!!!!!!!!!!


推荐阅读
author-avatar
caozhizhao
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有