1. 数据

203 阅读6分钟

数据的定义

数据是数据库中存储的基本对象

数据的性质

  • 数据和语义环境密切相关。
  • 数据通常由之分。
  • 现实生活中数据往往不是孤立存在的,他们之间是有联系

数据库

数据库技术本质是一种数据库管理技术

数据库管理系统 DBMS

对复杂的数据进行管理。

数据库管理的主要功能

  • 数据定义,提供数据定义语言(DDL),提供sql标准。
  • 数据操纵,提供数据操纵语言(DML),实现基本的增删改查。
  • 事务管理和运行管理,提供并发访问,保证数据的安全性、完整性、确保能够恢复到一致性。
  • 数据存储和查询处理,确定数据的物理组织和存取方式,提供数据的持久存储和有效访问。
  • 数据库的建立和维护
  • 其他功能

数据库系统

数据库系统由数据库DBMS(及其开发工具)应用系统和数据库管理员组成。

E720A88D-D5B0-47E4-BEC4-21270E4F084A.png

数据模型

数模模型是数据库技术的核心概念。

数据模型的层次

  • 概念模型(也称信息模型)
    • 现实世界到计算机世界跨度较大,需要一个中间层次,这就是信息世界
    • 概念模型是对信息世界进行建模,是现实世界到信息世界的第一层抽象。
    • 数据库设计人员了解现实世界后再大脑中的第一次抽象
    • 概念模型通常和计算机世界无关
    • 实体-联系模型进行建模(E-R图)
  • 数据模型
    三要素:数据结构、数据操作、完整性约束。

关系模型

  • 关系模型是主流的数据模型。
  • 具有坚实的数学基础、简洁的数据形式,并且支持易学易用的过程化语言

关系模型的数据结构

  • 现实世界中的对象对象之间的联系都用关系表示。
  • 关系模型要求关系必须是规范化的

关系模型的完整性约束

  • 完整性约束
  • 参照完整性
  • 用户自定义完整性

数据库系统的结构

  • 外部结构
  • 内部结构
    • 模式,逻辑模式;全体数据的总体逻辑结构描述,是数据库的核心与关键。

    • 外模式,介于模式应用之间

    • 内模式,全体数据物理结构描述

    • 外模式-模式映像,外模式与模式之间的对应关系;可以保证外模式的相对稳定性,为数据的逻辑独立性提供了保证。

    • 模式-内模式映像,定义数据全局逻辑结构与存储结构之间的对应关系。为数据的物理独立性提供了保证。通常,模式-内模式映像定义包含在模式之中。

6E30210A-BEF1-4802-B50B-715391ACA880.png

数据的独立性

数据独立性是指数据与应用程序相互独立。

  • 数据的逻辑独立性,应用程序数据库的逻辑结构之间的相互独立性,由 外模式-模式映像 保证
  • 数据的物理独立性,应用程序存储在磁盘上的数据库中的数据之间的相互独立性,由模式-内模式映像 保证。

数据库语言(DDL、DML、DCL)

三种语言

数据定义语言 DDL
  • 数据定义语言(DDL),用于定义数据库模式
    • 定义数据库的结构
    • 提供完整性约束的定义机制
    • 对数据定义进行修改和删除的
数据字典(DD)

数据字典 是DBMS维护的一系列内部表,用来存放 原数据

原数据 是关于数据的数据,包括数据对象的定义、索引的定义,视图的定义、授权的定义。

参考答案:

  • 系统中各类数据描述的集合,是对数据流图的详细描述。
  • 以特定的格式记录系统中各种数据、数据元素以及他们的名字、性质、意义以及约束。

访问数据时,DBMS都要访问数据访问数据字典。

数据操纵语言 DML
  • 数据操纵语言(DML),用于表达数据库的查询和更新

过程化DML,如层次和网状数据库系统,要求用户指明需要什么数据,而且需要用户描述如何获得这些数据的详细过程。
非过程化DML,用户需要指明获取什么,主要是关系型数据库系统。

数据控制语言 DCL
  • 数据控制语言(DCL),用于定义用户对数据对象的访问权限
  • 回收授权
  • 建立审计
  • Grant、Remove 等指令

实体-联系的基本概念

实体

客观存在的事物,可以使实际的也可以是抽象的,每个实体可以用一组属性来表示,这些属性都有一定的取值范围,称为值域

  • 实体集,具有相同属性的实体的集合,实体集通常对应数据库中的表,表中的每一行记录就是一个实体

  • 实体和实体集的型(类型)

    • 学生可以是一个实体,其类型可以包括学号、姓名、性别等属性。
    • 所有学生构成了一个学生实体集,其类型包括学生的属性和关系。
  • 实体的值

  • 实体集的值

  • 弱实体集:所有属性都不构成这个实体的码,必须依赖一个强实体。

    • 分辨符
    • 部分码
    • 双边矩形宽表示
  • 主码:理解为主键,码中的属性称为非主属性。
  • 候选码:可以多个,但只选一个做为主码。
  • 超码:能够唯一确认集合中的数据,就是有个主码和其他无关紧要的属性。
  • 外码:(理解为外键)

单个属性记作:sno;
多个属性记作:{sno,sname},用集合方式。

在不需要特别强调主码时,本书将使用 “码” 表示主码或候选码,而超码是码的超集。

码是语义概念,是实体集的性质

属性
  • 简单属性,
  • 基本属性,
  • 派生属性,是非永久性存于数据库的属性,可以通过计算推导出来,比如年龄。
  • 复合属性,复合属性是指具有多个属性的组合,例如名字属性,它可以包含姓氏属性和名字属性
  • 多值属性,一个实体的某个属性可以有多个不同的取值,例如一本书的分类属性,这本书有多个分类,例如科学、医学等,这个分类就是多值属性, 用双线椭标识。
  • 单指属性,该属性只能取单个值。
  • 可选属性,并不是所有的属性都必须有值,有些属性的可以没有值,这就是可选属性,在椭圆的文字后用(O)来表示。

值域:数据的取值范围。

联系

联系是多个实体之间的相互关联。

  • 一对一联系(1:1),一个学校只能有一个校长。
  • 一对多联系(1:n);多对一联系(n:1),
  • 多对多联系(m:n联系)

实体联系图(ER图):

  • 矩形框,实体集
  • 椭圆,表示属性
    • 多值属性用双边椭圆
    • 派生属性用虚边椭圆
    • 其他属性用单实边椭圆
    • 码的属性用下横线标识
  • 菱形,表示关系