绪论

数据库系统概述

  1. 数据(data)

    数据(Data)是数据库中存储的基本对象。例如文本、图形、图像、音频、视频、学生的档案记录、货物的运输情况等,这些都是数据。

    因此可对数据做如下定义:描述事物的符号记录称为数据

  2. 数据库(DataBase,DB)
    数据库是长期储存在计算机内、有组织的可共享大量数据的集合。数据库的基本特征有:
    (1)数据按一定的数据模型组织、描述和储存
    (2)可为各种用户共享
    (3)冗余度较小
    (4)数据独立性较高
    (5)易扩展

  3. 数据库管理系统(DBMS)
    数据库管理系统是位于用户操作系统之间的一层数据管理软件。数据库管理系统和操作系统一样是计算机的基础软件,也是一个大型复杂的软件系统。它的主要功能包括以下几个方面:
    (1)数据定义功能:数据库管理系统提供数据定义语言(DDL),用户通过它可以方便地对数据库中的数据对象的组成与结构进行定义。
    (2)数据组织、存储和管理
    (3)数据操纵功能:数据库管理系统还提供数据操纵语言(DML),用户可以使用它操纵数据,实现对数据库的基本操作,如查询、插入、删除和修改等。
    (4)数据库的事务管理和运行管理
    (5)数据库的建立和维护功能
    (6)其他功能

  4. 数据库系统(DBS)
    数据库系统是由数据库数据库管理系统应用程序数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。

数据管理技术的产生和发展

这张表还是挺重要的

数据库系统的特点

  1. 数据结构化:数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。

  2. 数据的共享性高、冗余度低且易扩充

  3. 数据独立性高

    数据独立性是借助数据库管理数据的一个显著优点,包含数据的物理独立性逻辑独立性
    物理独立性指用户的应用程序与数据库中数据的物理存储是相互独立的。当数据的物理存储改变了,应用程序不用改变。
    逻辑独立性指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,应用程序不用改变。
    数据独立性由数据库管理系统的二级映像功能来保证。

  4. 数据由数据库管理系统统一管理和控制
    (1)数据的安全性保护
    (2)数据的完整性检查
    数据的完整性指数据的正确性有限性相容性
    (3)并发控制
    (4)数据库恢复

数据模型

  1. 数据模型也是一种模型,它是对现实世界数据特征的抽象,通俗的讲就是对现实世界的模拟
    数据模型应满足三个要求:
    (1)能比较真实地模拟现实世界
    (2)容易被人理解
    (3)便于在计算机上实现
    数据模型是数据库系统的核心和基础

  2. 两类数据模型
    第一类是概念模型,也称信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。即E-R图
    第二类逻辑模型和物理模型,逻辑模型主要包括网状模型、层次模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型等。按计算机系统的观点对数据建模,用于DBMS实现。物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。

客观对象的抽象过程—两步抽象

  • 现实世界中的客观对象抽象为概念模型:将现实世界抽象为信息世界
  • 把概念模型转换为某一数据库管理系统支持的数据模型:将信息世界转换为机器世界

概念模型

  1. 信息世界中的基本概念
    (1)实体:客观存在并且可以相互区别的事物称为实体。实体可以使具体的人、事、物,也可以是抽象的概念和联系。
    (2)属性:实体所具有的某一特性称为属性,通俗讲就是数据表中的列,也被称为字段
    (3)码:唯一标识实体的属性称为码,通俗的讲就是主键
    (4)实体型:例如,学生(学号,姓名,性别,出生年月,所在院系,入学年份)就是一个实体型
    (5)实体集:同一类型实体的集合称为实体集。例如全体学生就是一个实体集
    (6)联系:实体之间的联系有一对一,一对多和多对多等多种类型

  2. 概念模型的一种表示方法:实体-联系方法

层次模型

  1. 层次模型是数据库中出现最早的数据模型

  2. 层次数据库系统的典型代表是IBM公司的IMS(Information Management System)数据库管理系统

  3. 层次模型用树形结构来表示各类实体以及实体间的联系

  4. 层次模型的数据结构:
    满足下面两个条件:有且只有一个结点没有双亲结点,这个结点称为根结点;根以外的其它结点有且只有一个双亲结点

  5. 层次模型的特点:

    • 结点的双亲是唯一的
    • 只能直接处理一对多的实体联系
    • 每个记录类型可以定义一个排序字段,也称为码字段
    • 任何记录值只有按其路径查看时,才能显出它的全部意义
    • 没有一个子女记录值能够脱离双亲记录值而独立存在

网状模型

  1. 网状模型与层次模型的区别

    • 网状模型允许多个结点没有双亲结点
    • 网状模型允许结点有多个双亲结点
    • 网状模型允许两个结点之间有多种联系(复合联系)
    • 网状模型可以更直接地描述现实世界

关系模型

  1. 每个关系的数据结构都是一张规范化的二维表

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

  1. 关系模型要求关系必须是规范化的:关系的每一个分量必须是一个不可分的数据项, 不允许表中还有表

  2. 关系模型的操纵与完整性约束

    • 实体完整性
    • 参照完整性
    • 用户自定义完整性
      具体含义后续介绍

数据库系统的结构

  1. 数据库模式的概念
    在数据模型中存在“型”(type)和“值”(value)的概念
    型(Type)是对某一类数据的结构和属性的说明;值(Value)是型的一个具体赋值。
    例如:
    学生记录:(学号,姓名,性别,系别,年龄,籍贯)
    一个记录值:(201315130,李明,男,计算机系,19,江苏南京市)

    模式(Schema)是对数据库逻辑结构和特征的描述;是型的描述,不是具体值;反映的是数据的结构及其联系,模式是相对稳定的
    实例(Instance)是模式的一个具体值反映数据库某一时刻的状态,同一个模式可以有很多实例,实例随数据库中的数据的更新而变动

  2. 数据库系统的三级模式结构
    外模式、模式和内模式三级构成

(1)模式:也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图
(2)外模式:也称子模式或用户模式,它是数据库用户能够看见和使用的部分数据的逻辑结构和特征的描述
(3)内模式:也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的存储方式