常用数据模型

  • 格式化模型
    • 层次模型
    • 网状模型
  • 关系模型
  • 对象模型
    • 面向对象数据模型
    • 对象关系数据模型

关系模型

在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。

  • 关系 relation:一个关系对应通常说的一个表
  • 元组 Tuple:表中的一行即为一个元组
  • 属性 attribute:表中的一列即为一个属性,给每一个属性起一个名称即为属性名
  • 主码 key:也称码键。表中的某个属性组,它可以确定一个元组 比如学号可以确定一个学生,所以学号就是一个主码
  • 域 domain:是一组具有相同数据类型的值的集合。属性的取值范围来自某个域。 比如学生年龄处于一个区间,这个区间就是一个domain
  • 分量:元组中的一个属性值
  • 关系模式
    • 对关系的描述
    • 关系名(属性一,属性二,….)
    • eg:学生(学号,姓名)

关系必须是规范化的,满足一定的规范条件

  • 最基本的规范条件:关系的每一个分量必须是一个不可分的数据项,不允许表中有表

关系模型的操作与完整性约束

  • 数据操作(增删改查)是集合操作,操作对象和操作结果都是关系
  • 存取路径对用户隐蔽,用户只要指出“干什么”,不必详细说明“怎么干”
  • 关系的完整性约束条件
    • 实体完整性
    • 参照完整性
    • 用户定义的完整性