三级模式两级映像
外模式:你看到的(视图、权限)
概念模式:所有人共享的“数据库说明书”(表结构)
内模式:机器怎么存的(文件、索引、页)
映像机制:DBMS 内部的“自动翻译器”,让三层能各自变化而不互相影响
-外模式 / 概念模式 映像
概念模式 / 内模式 映像
映像
映像机制的本质,就是“中间层解耦” —— 和软件工程里的“接口”思想一模一样!我们可以把“映像机制”看作数据库内部的多层接口或转换引擎,但它比“一层接口”更复杂、更动态。下面用贴近现实 DBMS(如 MySQL/PostgreSQL)实现的方式来澄清:SQL 查询 → 访问物理数据 → 通过某种“映像层”转换 → 返回用户可见的外模式结果。 这确实是 DBMS 的工作流程。但严格来说,映像机制不是“一层静态接口”,而是一组由系统维护的元数据 + 查询执行时的动态重写/投影逻辑。
简单但不严谨的理解: 映像就是一种mapping机制,在各层之间充当“翻译器”,在各个层之间做转换桥梁
数据模型的三大层次(对应数据库三级模式)
主流数据模型类型(按技术范式分类)
数据库设计六大步骤
E-R图
工具:E-R 图(Entity-Relationship Diagram)
关键元素:
实体(矩形):如
Student,Course属性(椭圆):如
StudentID,Grade联系(菱形):如
Enroll(学生, 课程),标注基数(1:N, M:N)
三大范式
数据库的三大范式(Three Normal Forms) 是关系型数据库设计中用于消除数据冗余、避免更新异常、保证数据一致性的核心规范化理论。它们由 Edgar F. Codd 在 1970 年代提出,是逻辑结构设计阶段的重要指导原则。
第一范式:表的每一列都是不可再分的原子值(Atomic Value),即没有重复组或多值字段。
第二范式:在满足第一范式的前提下: 表中所有非主键字段必须完全依赖于整个主键(不能只依赖主键的一部分)。
第三范式:在满足第二范式的前提下:表中所有非主键字段不能传递依赖于主键(即不能 A → B → C,其中 A 是主键)换句话说:非主键字段之间不能有依赖关系。
总结:
外模式:你看到的(视图、权限)
概念模式:所有人共享的“数据库说明书”(表结构)
内模式:机器怎么存的(文件、索引、页)
映像机制:DBMS 内部的“自动翻译器”,让三层能各自变化而不互相影响
SQL 的角色:接口语言,不是映像本身,而是用户用来定义和操作三级模式(尤其是外模式和概念模式)的语言工具。“SQL 语句(特别是视图、权限、表定义等)是用户参与构建和使用三级模式映像机制的主要方式。”
评论区