4.1 数据模型与体系

2026-11-03 11:38:00上一篇 / 下一篇

本篇定位:数据库系统是计算机专业知识的基本盘(9 年题量 9–14 题/年、均值 11,2025 年 11 题、2024 年 11 题、2023 年 14 题),且 2027 命题预测明确把范式/候选码、事务、索引、SQL 计算题列为"拉分主力"。本章是数据库篇的"世界观":数据模型(E-R/关系)、三级模式与二级映像、完整性约束——先搭起"数据库是什么、怎么组织、如何保证正确"的骨架。 数据依据:01-真题/真题文本/ 9 份真题原文 + 01-真题/考点汇总/ 9 份汇总;答案以专业判断为准。 阅读提示:本章与 4.2 SQL(建表/约束的语法载体)、4.3 范式(关系模型的质量标准)、4.7 数据仓库(体系对比)直接衔接;三级模式是全书理解数据库的钥匙。


一、考点定位(本章真题统计)

考点真题锚点频次考法
三级模式与数据独立性2018 单75、2022 单46/47、2025 单513 年 4 题视图=外模式、映像作用、独立性含义
数据模型三要素2025 单501 年数据结构、数据操作、完整性约束
完整性约束2018 单501 年主键/非空列插入不能为 NULL
E-R 模型2019 多851 年E-R 图基本成分(实体/属性/联系)
数据模型类型2018 多78(系统组成)交叉关系模型是最常用

命题规律:本章考点高度集中在三级模式/二级映像/数据独立性(3 年 4 题,是数据库选择题的"钉子户")与数据模型三要素(2025 单50 首考)。2027 预测 1–2 题:三级模式对应关系、二级映像与独立性、数据模型三要素。核心能力:外模式/模式/内模式一一对应,逻辑独立性 vs 物理独立性分清。


二、知识框架(先搭骨架)

数据库系统(DBS)= 数据库(DB)+ 数据库管理系统(DBMS)+ 应用程序 + 用户

数据模型(描述数据的三要素,2025 单50)
├── 数据结构:数据的组织方式(关系模型中=二维表/关系)
├── 数据操作:增删改查(SQL 实现)
└── 完整性约束:数据的正确性、相容性规则

概念模型(E-R 模型,面向用户)
├── 实体:客观存在的事物(学生、课程)
├── 属性:实体的特征(学号、姓名)
├── 联系:实体间的关系(1:1、1:n、m:n;选课=学生 m:n 课程)
└── E-R 图:矩形=实体、椭圆=属性、菱形=联系(2019 多85)

关系模型(逻辑层,关系数据库的基础)
├── 关系=二维表:行=元组(记录)、列=属性(字段)
├── 主键(主码):唯一标识一行
└── 关系模型三要素(2025 单50)

三级模式与二级映像(数据库系统的核心框架,2018 单75/2022 单46/2025 单51)
├── 外模式(用户模式):用户看到的数据视图 = 视图
├── 模式(概念模式):全体数据的逻辑结构 = 基本表
├── 内模式(存储模式):数据在存储介质上的物理结构 = 存储文件 + 索引组织方式(存取路径)
├── 外模式/模式映像:逻辑独立性(表结构变、视图不变)
└── 模式/内模式映像:物理独立性(存储变、逻辑不变)

完整性约束(数据库正确性保障)
├── 实体完整性:主键非空且唯一(2018 单50)
├── 参照完整性:外键取值必须是被参照表主键存在的值(或 NULL)
└── 用户定义完整性:业务规则(年龄>0、性别 in 男/女)

一句话记忆:数据模型三要素(结构/操作/约束)→ E-R 概念模型(实体属性联系)→ 关系模型(二维表主键)→ 三级模式(外=视图、概=基本表、内=存储文件)→ 二级映像(外/概映像=逻辑独立、概/内映像=物理独立)→ 三完整性(实体=主键、参照=外键、用户=业务)。


三、考点详解

3.1 数据模型与三要素(2025 单50)

精确定义:数据模型 = 对现实世界数据特征的抽象描述,包含三个要素(2025 单50,选 D):

  1. 数据结构:描述数据的组成方式(关系模型中就是"关系/二维表");
  2. 数据操作:对数据的操作集合(查询、插入、删除、修改);
  3. 完整性约束条件:保证数据正确性、相容性、有效性的规则。

2025 单50 答案 D(数据结构、数据操作、完整性约束条件)。"外模式、概念模式和内模式"是三级模式(干扰项);"实体、属性和联系"是 E-R 图三要素(另一个体系的干扰项)。口诀:模型三要素=结构+操作+约束。

3.2 E-R 模型(概念模型,2019 多85)

精确定义:E-R 模型(实体-联系模型) = 用实体、属性、联系描述现实世界信息的概念模型,面向用户分析阶段(对应 4.4 数据库设计的概念结构设计)。

E-R 图三成分(2019 多85,选实体/属性/联系):

  • 实体:矩形表示(学生、课程);
  • 属性:椭圆表示(学号、姓名);
  • 联系:菱形表示(选课),联系类型分 1:1(一对一)、1:n(一对多)、m:n(多对多)。

示例:学生选课——学生(实体)与课程(实体)之间是 m:n(多对多)联系(一个学生选多门课、一门课被多个学生选),联系"选课"本身可带属性(成绩)。

注意:E-R 模型是概念模型(与 DBMS 无关),不是逻辑模型也不是物理模型;把 E-R 图转换为关系模式是逻辑结构设计任务(见 4.4 章)。

3.3 关系模型(逻辑模型)

精确定义:关系模型 = 用**二维表(关系)**组织数据的逻辑模型。关系数据库的基础。

术语对应(必背):

关系模型术语日常叫法
关系(Relation)二维表
元组(Tuple)行、记录
属性(Attribute)列、字段
主键(Primary Key)主码(唯一标识一行)
外键(Foreign Key)引用其他表主键的列

关系模型的特点:结构简单(统一用表)、集合操作(行是集合元素)、数据独立性高(靠三级模式/二级映像)。

3.4 三级模式与二级映像(2018 单75、2022 单46/47、2025 单51,必考)

精确定义:三级模式是数据库系统的体系结构框架,把数据库分成三个抽象层次:

  1. 外模式(用户模式/子模式):单个用户看到的数据视图——对应视图(View);
  2. 模式(概念模式/逻辑模式):全体用户共享的数据逻辑结构——对应基本表;
  3. 内模式(存储模式):数据在物理存储介质上的组织方式——对应存储文件;此外索引的组织方式(存取路径)、数据是否压缩/加密也都归内模式。⚠️ 索引不是表结构的一部分,它属于内模式("逻辑设计出关系模式、物理设计出索引",见 4.4;索引的具体表示见 4.6)。

2018 单75 直接考对应关系:视图(外模式)、基本表(模式)、存储文件(内模式)——答案即"外-概-内"一一对应。

二级映像(2022 单46、2025 单51):

  • 外模式/模式映像:定义外模式与模式之间的对应关系——当模式改变(如表结构调整)时,只要修改映像、外模式不变 → 应用程序不变 → 实现逻辑独立性;
  • 模式/内模式映像:定义模式与内模式之间的对应——当存储结构改变(如换存储设备)时,只要修改映像、模式不变 → 实现物理独立性。

2022 单46:对表创建视图,实际上是构建了外模式和外模式/模式映像(视图=外模式)。 2022 单47:数据独立性 = 应用程序与数据库的结构相互独立(程序不依赖具体表结构)。 2025 单51:三级模式+二级映像使数据库具有较高的数据独立性。

记忆口诀:外=视图、概=基本表、内=存储文件;改表改存储都不动程序=独立性。

3.5 完整性约束(2018 单50)

精确定义:完整性约束 = 数据库必须满足的正确性、相容性规则,由 DBMS 自动检查保证。三类:

  1. 实体完整性:主键属性不能取 NULL,且取值唯一(2018 单50:插入记录时主键/非空列不能为空);
  2. 参照完整性:外键的值要么为 NULL,要么等于被参照表(主表)中已存在的主键值(保证引用不悬空——如选课表的外键"学号"必须是学生表里存在的学号);
  3. 用户定义完整性:业务规则(年龄 0–150、性别只能男/女、成绩 0–100)。

2018 单50 考实体完整性:插入时主键列或非空列取 NULL 会被拒绝。口诀:主键非空唯一=实体、外键有参照=参照、业务规则=用户。

3.6 关系代数(2019 单46 补强)

五个基本运算(其余都由它们导出):

运算符号含义要点
并R∪S合并两关系要求并相容:属性个数相同、对应属性域相同
差R−S在 R 中不在 S 中方向不可交换(R−S≠S−R)
笛卡尔积R×S所有元组组合元数 m+n、基数 |R|×|S|
选择σ_条件(R)按行筛相当于 SQL 的 WHERE
投影π_属性(R)取列相当于 SELECT 列,结果自动去重
  • 导出运算:交(R∩S=R−(R−S))、连接(θ 连接/等值连接/自然连接)、除(R÷S)、外连接。
  • 自然连接:按同名属性做等值连接并去掉重复列;两关系无公共属性时退化为笛卡尔积。
  • 除的语义:R(X,Y)÷S(Y) 得到"对 S 中每个 Y 都有对应 X"的 X——对应 SQL 里的"选修了全部课程"(双重 NOT EXISTS)。
  • 封闭性:运算结果仍是关系 ⇒ 可以嵌套组合。
  • 2019 单46:五种基本运算是并、差、笛卡尔积、选择、投影——交、连接、除都不是基本运算(这是原题的排他点)。

3.7 面向对象数据库与产品谱系(2022 单54、2024 单55 补强)

  • OODB(面向对象数据库):以对象为单位组织数据,支持封装、继承、多态;每个对象有系统生成的 OID(对象标识)——OID 不随属性值改变,不同于关系模型的主键。
  • 复合对象:对象的属性可以是另一个对象或对象集合(嵌套结构)——关系模型要求属性原子(1NF),表达不了这种嵌套(2022 单54 的落点)。
  • 持久对象 vs 瞬时对象:跨程序运行仍存在的是持久对象(OODB 的"持久性"就是把对象存到库里)。
  • ORDB(对象关系数据库):在关系模型上增加对象特性(自定义类型、继承、复杂类型、方法)。
  • 与 ORM 的区别:ORM 是"关系库+程序对象"的映射层,底层仍是关系模型,不是 OODB。
  • 产品谱系(2024 单55):openGauss 基于 PostgreSQL;MySQL、SQLite、openGauss 是关系型;Redis 是键值型内存库;MongoDB 是文档型。

四、易错坑汇总(命题人惯用陷阱)

  1. 三级模式对应关系(2018 单75):视图=外模式、基本表=模式、存储文件=内模式——"视图=内模式"是错误说法。
  2. 逻辑独立性 vs 物理独立性(2022 单46/47、2025 单51):逻辑独立性靠外模式/模式映像(改表结构不动视图和程序);物理独立性靠模式/内模式映像(改存储不动逻辑)。"逻辑独立性靠模式/内模式映像"是错误说法。
  3. 数据独立性含义(2022 单47):是应用程序与数据库结构相互独立,不是"数据之间互不影响"。
  4. 数据模型三要素(2025 单50):结构、操作、完整性约束——不要把"三级模式""实体属性联系"混进来。
  5. E-R 图三成分(2019 多85):实体、属性、联系——联系是菱形、实体是矩形、属性是椭圆,别把"对象"当 E-R 成分(2019 多85 的 B 项"对象"是干扰项,那是面向对象的概念)。
  6. m:n 联系:学生选课是多对多——"一个学生选多门课所以是 1:n"是常见误判(要看两个方向)。
  7. 实体完整性=主键:非空+唯一;"主键可以为 NULL"是错误说法(2018 单50)。
  8. 主键 vs 外键:主键标识本表行、外键引用他表主键——"外键必须和主键同名"错误(只要求值域对应)。

五、横向扩展(防漏网:本章边界内、真题尚未考但可能补考的点)

说明:横向扩展覆盖"大纲范围内但 9 年真题未考过"的知识,标注【新增概率】供取舍。

  1. 三级模式的优点【高】:数据独立性(逻辑+物理)、数据共享、数据安全(用户只见外模式)——"三级模式好处"多选高概率。
  2. 外模式/模式映像的数量【中】:一个数据库只有一个模式/内模式,但可有多个外模式(每个用户一个视图)——判断题素材。
  3. 层次模型/网状模型【低】:关系模型之前的历史模型(树形/网状)——名词辨析(9 年未考,了解即可)。
  4. 关系 vs 表的严格定义【低】:关系是元组的集合(无重复行、行序无关、列序无关)——"表中可以有完全相同的两行"是错误说法(集合不允许重复)。
  5. 数据库管理系统(DBMS)功能【中】:数据定义、数据操纵、数据库运行管理、数据组织存储、数据库建立维护——2019 单26 考数据操纵(DML),功能分类可补考多选。
  6. 数据库系统(DBS)组成【中】:数据库+DBMS+应用+用户(DBA/应用程序员/终端用户)——与 2.1 系统组成(硬件+软件)区分。
  7. 视图与基本表的本质区别【高】:视图不存储数据(虚表),基本表存储数据——4.6 章详解,此处先埋点。
  8. 候选码/主码/外码的关系【中】:主码从候选码中选定(详见 4.3 章)——两个体系衔接。

六、真题演练(代表性真题 + 解析)

例 1(2018 单75) 数据库的体系结构中,视图、基本表、存储文件分别对应(口径已核)。 A. 外模式、模式、内模式 B. 模式、外模式、内模式 C. 外模式、内模式、模式 D. 内模式、模式、外模式

答案:A。视图=外模式(用户视图)、基本表=模式(全体逻辑结构)、存储文件=内模式(物理存储)。口诀:外视图、概基本表、内存储。

例 2(2025 单50) 数据模型的三要素是(口径已核)。 A. 外模式、概念模式和内模式 B. 实体、属性和联系 C. 关系、属性和元组 D. 数据结构、数据操作和完整性约束条件

答案:D。数据模型三要素=数据结构、数据操作、完整性约束。A 是三级模式、B 是 E-R 图成分、C 是关系模型术语。口诀:模型三要素=结构+操作+约束。

例 3(2022 单47) 在 DBS 中,数据独立性是指(口径已核)。 A. 数据库与操作系统相互独立 B. 应用程序与数据库的结构相互独立 C. 数据库与网络相互独立 D. 数据与程序互不相关

答案:B。数据独立性 = 应用程序与数据库结构相互独立——表结构改变时程序不用改(靠二级映像实现)。口诀:程序不依赖表结构=数据独立。

例 4(2025 单51) 数据库的三级模式与二级映像机制使数据库具有较高的(口径已核)。 A. 数据独立性 B. 数据安全性 C. 数据共享性 D. 数据完整性

答案:A。三级模式+二级映像的核心价值=数据独立性(逻辑独立+物理独立)。安全性靠授权、完整性靠约束、共享性靠并发控制。口诀:三级模式二级映像→独立性。

例 5(2019 多85) 在数据库 E-R 图中,包括以下基本成分(口径已核)。 A. 实体 B. 对象 C. 属性 D. 联系

答案:ACD。E-R 图三成分=实体(矩形)、属性(椭圆)、联系(菱形);"对象"是面向对象的概念(干扰项)。口诀:E-R 三件套=实体属性联系。

例 6(2018 单50) 关于数据库的插入操作,下列说法正确的是(口径已核)。 A. 主键列可以为 NULL B. 非空列可以为 NULL C. 插入记录时主键/非空列不能为 NULL D. 所有列都可以为 NULL

答案:C。实体完整性:主键非空且唯一;非空列(NOT NULL 约束)也不能为 NULL。口诀:主键非空唯一,插入不能留空。


七、本章小结

  • 一条主线:数据模型三要素(结构/操作/约束)→ E-R 概念模型(实体/属性/联系)→ 关系模型(二维表/主键)→ 三级模式(外=视图、概=基本表、内=存储)→ 二级映像(逻辑/物理独立性)→ 三完整性(实体/参照/用户)。
  • 必背对应:视图=外模式、基本表=模式、存储文件=内模式;逻辑独立性=外/概映像、物理独立性=概/内映像。
  • 必背三要素:数据模型三要素(2025 单50);E-R 图三成分(2019 多85);完整性三约束。
  • 衔接预告:建表(主键/外键/约束的 SQL 实现)→4.2 SQL;候选码/范式→4.3;视图/索引→4.6;数据仓库(体系对比)→4.7。