数据模式

  现实世界中的事物及其联系,经过两级抽象和转换后形成了计算机世界中的数据及其联系,而数据模型就是用来描述数据及其联系的。

数据库中存放数据的结构是由数据模型决定的,数据模型是数据库的框架,是数据库系统的核心和基础

  数据模型是描述数据、数据联系、数据的语义和完整性约束的概念集合,由数据结构、数据操作和完整性约束三要素组成。

数据模型的组成要素

数据结构

  即数据组织的结构,用于描述系统的静态特征,描述数据库的组成对象以及对象间的联系。即:
    一是描述数据对象的类型、内容、性质等;
    二是描述数据对象间的联系。

常用的数据结构
在这里插入图片描述

数据操作

  对数据库中的数据允许执行的操作的集合,包括操作及相应的操作规则(优先级)等,描述了数据库的动态特性。
    一类是查询操作
    一类是更新操作(含插入、删除和修改)

数据的完整性约束

一组完整性规则的集合。
  完整性规则是数据模型中数据及其联系所具有的制约和依存规则。用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。

常用的数据模型

层次模型

  层次模型是采用树型结构(有根树)来表示实体及其实体间的联系的模型。树形结构中的结点表示实体型,实体型间的联系用指针表示。
  采用层次模型的数据库的典型代表是IBM公司1968年推出的IMS数据库管理系统
在这里插入图片描述

特点

  1.有且仅有一个结点没有双亲,根结点
  2.根以外的其他结点有且仅有一个双亲结点
  3.父子结点之间的联系是一对多(1:n)的联系
  4.任何一个给定的记录值只有按其路径查看时,才能显出它的全部意义

层次模型的数据操纵与数据完整性约束

  1.进行插入操作时,如果没有相应的双亲结点值就不能插入子女结点值 。 
  2.进行删除操作时,如果删除双亲结点值,则相应的子女结点值也被同时删除。
  3.修改操作时,应修改所有相应的记录,以保证数据的一致性。

优点

  1.结构简单,层次分明
  2.查询效率高 ,从根结点到树中任一结点均存在一条唯一的层次路径
  3.提供良好的数据完整性支持

缺点

  1.不能直接表示多对多联系
  2.插入和删除数据限制太多
  3.查询子女结点必须通过双亲结点

网状模型

  1.网状模型是采用有向图结构表示实体以及实体之间联系的数据模型 。 
  2.每个结点表示一个实体型。
  3.结点间的带箭头的连线(或有向边)表示记录型间的1:n的父子联系。
  比较有代表性的系统是,20世纪70年代,数据系统语言研究会CODASYL提出的DBTG系统
在这里插入图片描述

特点

  1.有一个以上的结点没有双亲结点
  2.允许结点有多个双亲结点
  3.允许两个结点之间有多种联系(复合联系)

网状模型的数据操纵与完整性约束

  1.插入数据时,允许插入尚未确定双亲结点值的子女结点值。
  2.删除数据时,允许只删除双亲结点值。
  3.修改数据时,只需更新指定记录即可。

优点

  1.可表示实体间的多种复杂联系
  2.具有良好的性能和存储效率

缺点

  1.数据结构复杂
  2.数据定义语言、数据操纵语言复杂
  3.用户需要了解网状模型的实现细节

关系模型

  以二维表(关系)的形式表示实体和实体之间联系的数据模型。
  1970年美国IBM公司的研究员E.F.Codd提出,1977年IBM公司研制的关系数据库的代表System R。
在这里插入图片描述
  关系模型的数据结构是一张规范化的二维表,它由表名、表头和表体三部分构成
在这里插入图片描述

分量 每一行对应的列的属性值,即为元组中的一个属性值。

候选码 可惟一标识一个元组的属性或属性集。如S表中学号可以惟一确定一个学生,为学生关系的主码。

关系模式 关系模式是对关系的描述,是关系模型的“型” 。一般表示为:关系名(属性1,属性2,……属性n)。
如:学生(学号,姓名,性别,年龄,系别)

关系模型的数据操纵与完整性约束

  关系模型的数据操纵主要包括查询、插入、删除和修改
  关系模型中的数据操作是集合操作,操作对象和操作结果都是关系,即若干元组的集合。
  关系模型把对数据的存取路径隐蔽起来,用户只要指出“干什么”,而不必详细说明“怎么干”, 从而大大地提高了数据的独立性,提高了用户操作效率。

优点

  1.有严格的数学理论根据
  2.数据结构简单、清晰,用关系描述实体及其联系
  3.具有更高的数据独立性、更好的安全保密性

缺点

  查询效率不如非关系模型

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章