关系数据模型的名词解释_有哪些不足

羽彤2 1172分享

  关系数据模型的名词解释:

  1970年美国IBM公司San Jose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型,开创了数据库的关系方法和关系数据理论的研究,为数据库技术奠定了理论基础。由于E.F.Codd的杰出工作,他于1981年获得ACM图灵奖。

  20世纪80年代以来,计算机厂商新推出的数据库管理系统几乎都支持关系模型,非关系系统的产品也大都加上了关系接口。数据库领域当前的研究工作也都是以关系方法为基础。

  关系数据库系统是支持关系模型的数据库系统。

  关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成的。

关系数据模型的名词解释_有哪些不足

  关系数据模型的关系操作:

  关系模型给出了关系操作的能力,但不对RDBMS语言给出具体的语法要求。

  关系模型中常用的关系操作包括:选择(select)、投影(project)、连接(join)、除(Divide)、并(Union)、交(Intersection)、差(Difference)等查询(Query)操作和增加(Insert)、删除(Delete)、修改(Update)操作两大部分。查询的表达能力是其中最重要的部分。

  关系操作的的特点是集合操作方式,即操作的对象和结构都是集合。这种操作方式也称为一次一集合(set-at-a-time)的方式。相应地,非关系数据模型的数据操作方式则为一次一记录(record-at-a-time)的方式。

  早期的关系操作能力通常用代数方式或逻辑方式来表示,分别称为关系代数和关系演算。关系代数是用对关系的运算来表达查询要求的方式。关系演算是用谓词来表达查询要求的方式。关系演算又可按谓词变元得基本对象是元组变量还是域变量分为元组关系演算和域关系演算。关系代数、元组关系演算和域关系演算三种语言在表达能力是完全等价的。

  关系代数、元组关系演算和域关系演算均是抽象的查询语言,这些抽象的语言与具体的DBMS中实现的实际语言并不完全一样。但它们能用作评估实际系统中查询语言能力的标准或基础。实际的查询语言除了提供关系代数或关系演算的功能外,还提供了许多附加功能,例如集函数、关系赋值、算数运算等。

  关系语言是一种高度非过程化的语言,用户不必请求DBA为其建立特殊的存取路径,存取路径的选择由DBMS的优化机制来完成,此外,用户不必求助于循环结构就可以完成数据操作。

  关系数据模型的不足:

  一.对“现实世界”实体的表达能力比较弱

  规范化通常导致表与“现实世界”中的实体不对应,它将“现实世界”中的实体分割成几张表来显示,以物理表示法来反映实体结构,这样效率会比较差,常常要在查询处理中进行很多连接操作。

  二.语义过载

  关系模型表达数据和数据间关系的构造只有一种——表。例如,为了表达实体a和实体b之间的多对多(*:*)关系、我们需要创建三张表,两个分别用于表达实体a和b,第三张表用于表达实体间的关系。它没有一种机制来区分实体和关系,也无法区分在实体间存在的不同种类的关系。例如,一个1:*关系可能是has、supervises、manages等等。如果可以进行区分,也许我们就可以将语义构建到操作中。所以,我们说关系模型语义过载了。

  三.不能很好的支持业务规则

  很多商业化系统不能完全支持实体和参照完整性、域等业务规则,所以需要将它们内置到应用程序中。这样当然是危险的,而且容易导致做重复的工作。更糟糕的是,可能还会引起不一致现象。而且,在关系模型中不支持其他类型的业务规则,这又意味着它们需要被构建到dbms或应用程序中。

关系数据模型的名词解释_有哪些不足

关系数据模型的名词解释: 1970年美国IBM公司San Jose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型,开创了数据库的关系方法和关系数据理论的研究,为数据库技术奠定了理论
推荐度:
点击下载文档文档为doc格式

    相关文章

    557987