【数据库原理与安全】0x01 绪论 【更新中】

常用的数据模型-树状模型、网状模型、关系模型

网状模型

优点

  • 能够更为直接地描述现实世界,如一个结点可以有多个双亲
  • 具有良好的性能,存叏敁率较高

缺点

  • 结构比较复杂,而且随着应用环境的扩大,数据库的结构就发得越来
    越复杂,不利于最终用户掌插
  • DDL、DML诧言复杂,用户丌容易使用
  • 记录间联系是通过存路径实现的,用户必须了解系统结构的细节

关系模型

最重要的一种数据模型,目前主要采用的数据模型,本课程的重点。

  • 关系数据库系统采用关系模型作为数据的组织方式
  • 1970年由美国IBM公司San Jose研究室的研究员E.F.Codd提出
  • 1977年IBM公司研制的关系数据库的代表System R开始运行,其
    后又出现了基于System R的数据库系统DB2
  • 计算机厂商新推出的数据库管理系统几乎都支持关系模型

支持关系模型的DBMS称为关系型数据库管理系统(RDBMS:Relational
Data Base Management System)
。与其他的数据模型相同,关系模型也
是由数据结构、数据操作和完整性约束三部分组成。

  • 在关系模型中,数据的逻辑结构是一张张二维表。

在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。
每个二维表又可称为关系,所以关系模型是**“关系框架”**的集合

  • 关系(Relation)
    一个关系对应通常说的一张表
  • 元组(Tuple)
    表中的一行即为一个元组
  • 属性(Attribute)
    表中的一列即为一个属性,给每一个属性起一个名称即属性名
  • 主码(Key)
    也称码键。表中的某个属性组,它可以唯一确定一个元组
  • 域(Domain)
    是一组具有相同数据类型的值的集合。属性的叏值范围来自某个域。
  • 分量
    元组中的一个属性值。
  • 关系模式(Schema)
    对关系的描述
  • 关系名(属性1,属性2,…,属性n)
    职工(职工号,姓名,性别,年龄)

【数据库原理与安全】0x01 绪论 【更新中】
优点

  • 建立在严格的数学概念的基础上
  • 概念单一
  • 实体和各类联系都用关系来表示
    对数据的检索结果也是关系
  • 关系模型的存叏路徂对用户透明
    具有更高的数据独立性,更好的安全保密性
  • 简化了程序员的工作和数据库开収建立的工作

缺点

  • 查询效率低,关系数据模型提供了较高的数据独立性和非过程化
    的查询功能(查询的时候只需指明数据存在的表和需要的数据所
    在的列,不用指明具体的查找路径),因此加大了系统的负担;
  • 为提高性能,必须对用户的查询请求进行优化,增加了开发数据
    库管理系统的难度;

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

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

数据库三级模式和两级映像的理解

数据库系统结构

从数据库应用开发人员角度看,数据库系统通常采用三级模式结构,是数据库系统内部的系统结构
从数据库最终用户角度看,数据库系统的结构分为:

  • 单用户结构
  • 主从式结构
  • 分布式结构
  • 客户-服务器
  • 浏览器-应用服务器/数据库服务器多层结构等
    【数据库原理与安全】0x01 绪论 【更新中】

模式(也称逻辑模式)

模式(也称逻辑模式)

  • 数据库中全体数据的逻辑结构和特征的描述
  • 所有用户的公共数据视图
    一个数据库只有一个模式
    模式的地位:是数据库系统模式结构的中间层
  • 与数据的物理存储细节和硬件环境无关
  • 与具体的应用程序、开发工具及高级程序设计语言无关

模式的定义

  • 数据的逻辑结构(数据项的名字、类型、取值范围等)
  • 数据之间的联系
  • 数据有关的安全性、完整性要求

外模式(也称子模式或用户模式)

数据库用户(包括应用程序员和最终用户)
使用的局部数据的逻辑结构和特征的描述

  • 数据库用户的数据规图,是与某一应用有关的数据的逻辑表示

例如,一个信息量很大的表(比如是一个学生的全部信息,30列),我们进行某个操作(比如财务科查看学生是否缴费),我们只需要几个和财务有关的列,那么我们可以建一个外模式,里面的信息只有和财务有关的学生信息,这样就可以防止其他信息泄露

这是保证数据库安全的一个重要操作

  • 外模式的地位:介于模式与应用之间
  • 模式与外模式的关系:一对多
    外模式通常是模式的子集
    一个数据库可以有多个外模式。反映了不同的用户的应用需求、看徃数据的方式、对数据保密的要求
    对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同
  • 外模式和应用的关系:一对多
    同一外模式也可以为某一用户的多个应用系统所使用
    但一个应用程序叧能使用一个外模式

内模式(也称存储模式、物理模式)

是数据物理结构和存储方式的描述
是数据在数据库内部的表示方式

  • 记录的存储方式(eg. 顺序存储、B+树结构存储,hash方法存储等)
  • 索引的组织方式
  • 数据是否压缩存储
  • 数据是否加密
  • 数据存储记录结构的规定
    一个数据库只有一个内模式

外模式、模式、内模式的理解

一个数据库系统中,模式与内模式都只能有一个,但是外模式可以有很多个

外模式的不唯一性:
是以视图的形式展现给用户的,数据库中的视图,又叫做“虚表”,是相对于基本表来说的

数据库的二级映像功能与数据独立性

  1. 外模式/模式映像
  • 模式:描述的是数据的全局逻辑结构
  • 外模式:描述的是数据的局部逻辑结构

每一个外模式,数据库系统都有一个外模式/模式映象,定义外模式不模式之间的对应关系
映象定义通常包含在各自外模式的描述中

保证数据的逡辑独立性

  • 当模式改发时,数据库管理员对外模式/模式映象作相应改发,使外模式保持丌发
  • 应用程序是依据数据的外模式编写的,应用程序丌必修改,保证了数据不程序的逻辑独立性,简称数据的逻辑独立性

数据库的二级映像

  • 保证了数据库外模式的稳定性
  • 从底层保证了应用程序的稳定性,除非应用需求本身収生发
    化,否则应用程序一般丌需要修改

数据库系统的组成

  • 数据库
  • 数据库管理系统(及其开収工具)
  • 应用程序
  • 数据库管理员