科德发明的关系数据库

科德之所以想为数据库建立数学模型,是因为当时的数据库很不令人满意,而科德认为,建立一个坚实的数学基础是数据库领域本质性创新的最好方法。

那时,数据库已在大型企业得到普遍使用。它们采取了两种模型:网络数据库模型和层次数据库模型。它们都可以被看作是一种有向图,即由数据记录组成的结点和一些带箭头的线联结而成。层次数据库是一种树状图,而网络数据库则是任意形式的图。

比如,在层次数据库模型中,我们可以从“树根”结点“学生”查到张三的记录,从而获知他是2000级的学生,家住成都,选了三门课。再顺着相应的指针,我们可以看出张三的数学课成绩是100分,物理课95分,社会课90分。要注意的是,社会课的老师要求同学们两人一组工作,按组定成绩。网络数据库模型可以超出树状结构,因此,社会课的记录结点有张三和李四两个指针指向它。

这两类数据库在很多情况下使用起来还是比较方便。但如果信息是隐藏在数据库中间就难得到。比如,如果我们要列出“至少一门功课在90分以上的所有同学”的名单,就需要顺着很多指针搜索整个数据库。而且,这两类数据库的信息查询取决于它们的结构,需要编写一些依赖结构的程序才能完成查询。它们没有通用的数据查询操作。更为麻烦的是,这些数据库没有坚实的数学基础,它们完全可以包含冗余信息或不一致的信息,而用户却可能完全不知道。

科德发明的关系数据库完全改变了这一切。它不仅有一个坚实的数学基础,即关系代数,而且科德从关系代数的基础推演出一套关系数据库的理论。这个理论包括一系列“范式”,可以用来检查数据库是否有冗余性和不一致等等性质。另外,科德也在关系代数基础之上定义了一系列通用的数据基本操作(相当于代数中的一些算子)。原来在层次数据库和网络数据库中很复杂的操作变得逻辑上简明扼要。比如,要找出“至少一门功课在90分以上的同学”名单,只需要在成绩表中搜索“成绩”一列,再把选中(成绩?90)的行中的学生名字列出即可。

科德发明的关系数据库

网络数据库模型

科德发明的关系数据库
层次数据库模型

科德发明的关系数据库
关系数据库模型

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值