数据库基础概念.md 4.2 KB


title: 数据库基础概念 tags:

  • module
  • database
  • foundation
  • joplin type: module source_type: reconstructed created: 2026-04-22 updated: 2026-04-22 ---

数据库基础概念

[!abstract] 这一模块负责打底:先明确数据库系统是什么、为什么出现,以及它为什么比文件系统更适合管理共享数据。

模块结论

  • [[数据库系统]] 的核心价值是让数据从“程序私有文件”变成“可共享、可约束、可统一管理的资源”。
  • [[三级模式与二级映像]] 是数据库独立性的理论骨架,决定了应用、逻辑结构和物理存储如何解耦。
  • 数据模型决定“如何描述世界中的数据关系”,而关系模型之所以成为主流,是因为它抽象统一且易于操作。

一、数据库系统到底是什么

  • 数据库 DB:长期存储、有组织、可共享的数据集合。
  • 数据库管理系统 DBMS:负责定义、操纵、维护和控制数据库的软件。
  • 数据库系统 DBS:DB、DBMS、应用程序和用户构成的整体。

DBMS 的核心职责

  • 数据定义:组织表、模式、约束等结构。
  • 数据操作:提供查询、插入、删除、更新等能力。
  • 数据控制:负责安全性、完整性、并发控制和恢复。
  • 数据维护:保证长期运行中的一致性与可用性。

二、数据库系统为什么优于文件系统

文件系统的主要局限

  • 数据冗余高,同一信息可能散落在多个文件中。
  • 程序和数据绑定紧,结构一改,应用往往跟着改。
  • 查询能力弱,跨文件关联和复杂统计困难。
  • 一致性和安全性依赖各个应用程序自行保证。

数据库系统的优势

  • 数据共享性高,冗余低。
  • 支持逻辑独立性和物理独立性。
  • 通过统一约束机制保证一致性。
  • 由 DBMS 集中管理权限、并发和恢复。

三、数据模型是怎么来的

  • 数据模型是描述数据结构、数据操作和完整性约束的抽象工具。
  • 常见模型包括层次模型、网状模型、关系模型和对象模型。
  • 复习重点是理解模型在“表达能力”和“使用复杂度”上的权衡。

常见模型的直观对比

  • 层次模型:像树,适合一对多,但多对多表达不方便。
  • 网状模型:能表示复杂关系,但结构和操作都偏复杂。
  • [[关系模型]]:用二维表表示数据,抽象统一、便于查询和教学。
  • 对象模型:支持复杂对象,适合更丰富的数据类型场景。

四、三级模式与二级映像

  • 外模式:用户或应用看到的局部视图。
  • 模式:全体数据的整体逻辑结构。
  • 内模式:数据实际存储方式和物理组织。

两个映像解决什么问题

  • 外模式/模式映像:保证逻辑独立性。
  • 模式/内模式映像:保证物理独立性。

为什么这套结构重要

  • 应用程序通常不该直接依赖底层存储细节。
  • 库表逻辑调整时,也不应让所有外部应用一起重写。
  • 所以三层结构本质是在做“变化隔离”。

五、数据库系统的核心特征

  • 数据结构化:不是零散文件,而是按模型组织。
  • 数据共享性:多用户、多应用可以共同使用同一份数据。
  • 数据独立性:上层逻辑与底层存储尽量解耦。
  • 统一管理:安全、完整性、并发、恢复由系统统一负责。

六、易错点

  • 不要把 DB、DBMS、DBS 混为同一个概念。
  • 数据独立性不是“完全不用改程序”,而是降低改动影响范围。
  • 三级模式是抽象分层,不等于数据库里一定只有三张“真实表”。

七、复习提问

  • 数据库系统比文件系统多解决了哪些关键问题?
  • 为什么三级模式与二级映像能支撑数据独立性?
  • 数据模型的“结构、操作、约束”三部分分别在说什么?

来源

  • [[raw/Joplin/计算机专业基础/数据库/_计算机考研复试数据库核心知识点整理.md]]
  • [[raw/Joplin/计算机专业基础/数据库/1.数据库——基础概念.md]]

相关页面

  • [[数据库]]
  • [[关系数据库核心]]
  • [[数据库系统]]
  • [[三级模式与二级映像]]