数据库系统概述

基本概念

  • 数据

  • 数据库(DB)

    • 长期存储在计算机内、有组织的、可共享的大量数据的集合
    • 永久存储 有组合 可共享
  • 数据库管理系统(DBMS)

    • 数据定义功能(数据定义语言DDL)
    • 数据组织、存储和管理
    • 数据操纵功能(数据操作语言DML)
    • 数据库的事务管理和运行管理
    • 数据库的建立和维护功能
  • 数据库系统(DBS)

    • 由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成

    image-20250119202308235

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

  • 人工管理阶段

  • 文件系统阶段

  • 数据库系统阶段

数据模型

现实世界的模拟

三类数据模型

  • 概念模型

    • 用于数据库设计
  • 逻辑模型

    • 关系模型 (二维表)
    • 面向对象模型
    • 对象关系模型
  • 物理模型

    • 最底层的抽象
    • 面向计算机系统

数据模型的组成要素

  • 数据结构

  • 数据操作

  • 完整性约束

概念模型

  • 现实世界到信息世界的第一层抽象

  • 用于信息世界的建模

信息世界中的基本概念

  • 实体

    • 客观存在并可相互区别的事物
  • 属性

    • 实体所具有的某一特性
    • 唯一标识实体的属性集
    • 一组具有相同数据类型的值的集合, 属性的取值范围
  • 实体型

    • 具有相同属性的实体
  • 实体集

    • 同一类型实体的集合
  • 联系

    • 事物内部以及事物之间的联系

两个实体型之间的联系

  • 一对一联系 (1 : 1)

  • 一对多联系 (1 : n)

  • 多对多联系 (m : n) [双向一对多]

两个以上的实体型之间的联系

image-20250119202320225

单个实体型内的联系

image-20250119202333245

实体-联系图 (E-R图)

  • 实体型: 矩形

  • 属性: 椭圆形

  • 联系: 菱形

    • 若联系具有属性, 则也需要与属性连接

实例

image-20250119202338863

最常用的数据模型

  • 层次模型

  • 网状模型

  • 关系模型

  • 面向对象模型

  • 对象关系模型

关系模型

关系数据模型的数据结构

  • 关系: 一张二维表

  • 元组: 表中的一行

  • 属性: 表中的一列

  • 码: 表中的某个属性组, 可以唯一确定一个元组

  • 域: 属性的取值范围

  • 分量: 元组中的一个属性值

  • 关系模型: 关系名(属性1, 属性2, …, 属性n)

E-R图中的每个实体型对应一张二维表, 实体型之间的联系也一样, 且有属性来自相邻的实体型

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

  • 操作

    • 查询, 插入, 删除, 更新
  • 完整性约束条件

    • 实体完整性 (码)
    • 参照完整性 (联系)
    • 用户定义完整性

关系数据模型的优点

  • 建立在严格的数学概念的基础上

  • 概念单一

  • 存取路径对用户透隐蔽

数据库系统结构

数据库系统模式的概念

  • 模式

    • 数据库中全体数据的逻辑结构和特征的描述

相当于一个模板, 每个实例是按这个模板做出来的模型

三级模式与二级映像

  • 外模式

    • 根据应用的需求展示数据
  • 模式

    • 数据在数据库的存储方式 (逻辑上)
  • 内模式

    • 数据在计算机的存储方式 (物理上)
  • 内模式/模式映像

    • 内模式到模式的转换 (查看二维表)
  • 外模式/模式映像

    • 数据的存取

    image-20250119202348927

  • 外模式通常是模式的子集

  • 一个外模式可为多个应用使用, 一个应用只能使用一个外模式

  • 外模式保证数据库安全性

数据库系统的组成

  • 硬件平台及数据库

  • 软件

    • DBMS
    • 支持DBMS的操作系统
    • 具有与数据库接口的高级语言及编译系统
    • 以DBMS为核心的应用开发工具
    • 为特定应用环境开发的数据库应用系统
  • 人员

    image-20250119202353606