当前位置: 首页 > news >正文

数据库期末复习(一)

数据库期末复习(一)

基本概念

DBMS

DBMS(数据库管理系统)是用户/应用程序与数据库之间的接口。应用程序通过DBMS访问数据,用户也通过DBMS操作数据。

DDL和DML

  • DDL(数据定义语言):用于定义数据库的三级模式结构(外模式、概念模式、内模式)以及各种约束(如CREATE、ALTER、DROP)。
  • DML(数据操作语言):用于对数据库中的数据进行操作(增、删、改、查,如SELECT、INSERT、UPDATE、DELETE)。

三级模式结构

这三个概念是数据库三级模式结构的核心,也是数据库管理系统(DBMS)实现数据独立性的关键。它们分别从**“用户怎么看”、“全局逻辑怎么组织”“物理磁盘怎么存”**三个层次来描述数据。

以图书馆比较:

1. 外模式(External Schema)—— “用户视角”
  • 定义:又称子模式用户模式,是某个特定用户或应用程序所能看到的数据视图。
  • 核心特点:一个数据库可以有多个外模式。它只为特定用户展示他们感兴趣或有权访问的部分数据,并隐藏了其他无关数据。
  • 实现语言:由**DDL(数据定义语言)**中的视图定义部分来定义。
  • 图书馆类比:你是前来借书的普通读者。你看到的不是整个仓库,而是图书馆的前台检索系统和阅览室。你只能看到书名、作者和是否在架(对应你权限内的数据),看不到图书的采购成本或供应商信息(隐藏敏感字段)。
  • 实际例子:学生查询成绩只能看到分数,不能看到教务老师的修改日志;或者电商APP的“订单页面”只展示用户自己的订单详情,而不涉及全量数据库。
2. 概念模式(Conceptual Schema)—— “全局管理者视角”
  • 定义:又称逻辑模式,是数据库中全体数据整体逻辑结构和特征的描述。
  • 核心特点:它不涉及数据在磁盘上的具体存储方式,只关注“这个数据库里有哪些实体、它们有哪些属性、实体之间是什么关系”(比如:学生选课,一个学生对应多门课,一门课对应多个学生)。一个数据库只有唯一一个概念模式。
  • 实现语言:由DDL来定义(CREATE TABLE, ALTER TABLE等)。
  • 图书馆类比:这是馆长或总管理员眼中的全局图景。馆长清楚图书馆所有藏书(不管在哪个书库)、所有读者信息、所有借阅记录,以及“读者-图书”之间的借阅规则,但不关心每本书具体摆在哪一排货架的哪个螺丝钉位置。
  • 实际例子:数据库设计阶段的ER图(实体关系图)转化而来的关系模型,定义了Student表、Course表和SC选课表及其主外键约束。
3. 内模式(Internal Schema)—— “存储工程师视角”
  • 定义:又称存储模式,是数据在数据库内部物理结构上的存储方式。
  • 核心特点:它描述了数据在磁盘、磁带等存储介质上是如何存放的,包括记录如何存储(定长/变长)、索引如何建立(B+树/Hash)、数据是否压缩、存储位置等。一个数据库也只有唯一一个内模式。
  • 实现语言:由DDL中的物理存储参数来定义(不同数据库语法不同)。
  • 图书馆类比:这是仓库搬货员或系统架构师眼中的景象。他不关心书名是什么,只关心这堆数据(书)装在哪个编号的箱子(数据块)、放在货架第几层第几格(磁盘扇区/磁道)、有没有贴条形码便于快速查找(索引)。
  • 实际例子:Oracle的表空间设置、MySQL InnoDB存储引擎的页大小(16KB)设置、索引文件的实际排序方式。

它们之间的关系(关键)

这三个模式之间通过映射进行转换:

  • 外模式/概念模式映射:当用户查询一个视图时,DBMS会把这个视图查询转换成对底层基础表(概念模式)的查询。这使得当概念模式改变(例如表结构微调)时,只要视图不变,用户的应用程序就不需要修改(这叫逻辑数据独立性)。
  • 概念模式/内模式映射:当物理存储结构改变(例如换了更快的磁盘存储结构、重建了索引),只要概念模式的逻辑结构不变,应用程序就无需重写(这叫物理数据独立性)。

简单记忆口诀

  • 外模式:用户看到什么(视图)。
  • 概念模式:数据库里有什么(表结构)。
  • 内模式:磁盘上怎么存(存储文件)。

两级映射

完整的“三级模式结构” = 三级模式 + 两级映射(Image)

也就是说,这三者本身是结构的“骨架”,但如果没有两级映射把它们串联起来,数据库的数据独立性就无法实现。教材和考题中通常将“三级模式结构”统称为“三级模式两级映射”

具体补充如下:

1. 两级映射指的是什么?
  • 外模式/概念模式映射:定义了外模式与概念模式之间的对应关系。当概念模式(表结构)发生微小变化(如增加字段)时,只要映射不变或调整,用户的外模式(视图)就可以不变,应用程序无需修改。这实现了逻辑数据独立性
  • 概念模式/内模式映射:定义了概念模式与内模式之间的对应关系。当内模式(存储结构、索引、压缩方式)改变时,只要映射不变,概念模式就不变,应用程序也不需要重写。这实现了物理数据独立性
2. 常见的迷惑选项

如果做题时遇到类似“三级模式结构只包含外模式、概念模式、内模式”的说法,它本身是正确的(因为说的是“三种模式”本身)。

但如果遇到“数据库三级模式结构就是这三种模式,不包括其他内容”这种更强调“内容完整性”的选项,你就要警惕了——因为严格来讲,完整的体系结构包含映射。如果在多选题中,提到“映射”也是该结构的组成部分,一定要把它选上。


简单总结记忆:

  • 三级模式(三样东西):外模式、概念模式、内模式。
  • 两级映射(两座桥梁):外/概念映射、概念/内映射。
  • 合起来:才构成DBMS实现数据独立性的完整架构。

数据库结构概览

物理磁盘

内模式层 - 唯一

映射2

概念模式层 - 唯一

映射1

外模式层 - 多个

用户与应用程序层

普通学生应用

教务管理员应用

数据分析师应用

外模式1
学生成绩视图

外模式2
课程管理视图

外模式3
统计报表视图

外模式/概念模式映射
【逻辑数据独立性】

全局逻辑结构
学生表 / 课程表 / 选课表 / 教师表

概念模式/内模式映射
【物理数据独立性】

物理存储结构
数据文件 / B+树索引 / 压缩方式 / 分区

数据库物理文件


看图的关键点解读(配合上图更清晰)

  1. 从上往下看:用户的操作请求从“外模式”进入,最终流向物理磁盘。
  2. 注意箭头位置:两个映射(虚线框)夹在三种模式之间,起到承上启下的桥梁作用。
  3. 唯一 vs 多个
    • 外模式:对应用户的多样需求,可以有多个(如图中的1、2、3)。
    • 概念模式内模式:全局统一,只有一个
http://www.jsqmd.com/news/1151413/

相关文章:

  • SINAMICS V90 PN 单圈编码器扩展:虚拟多圈功能与S7-1500 TO 32位配置对比
  • 什么是 JSON 查看器?
  • 短效IP代理时效有多久?科普详解与新手使用避坑指南
  • 基于 ESP32-CAM 的实验室设备状态二维码巡检系统
  • 远程开发环境搭建实战:从SSH配置到VS Code远程编辑
  • day03_Java学习笔记
  • 【6.21】知识点清单逐点解答
  • K-5065 UV三防漆-电子线路板防护-技术参数与选型
  • 奢侈品销售管理系统设计与实现开题报告
  • 终极实战指南:免费解锁Grammarly高级功能的Cookie自动获取工具
  • Ollama Windows 本地部署全指南:从零开始搭建大模型运行环境
  • 人工智能技术全场景应用解析:原理、落地案例、实战代码与未来趋势(2026最新)
  • AI 编程助手如何从个人工具变成项目工作流:Codex 使用实践与版本选择
  • AI多Agent协作系统实战(九):Agent恢复备份导致菜单丢失的血泪教训
  • BLS 宽度学习系统 vs 深度学习:5 个工业场景下的训练速度与精度实测
  • WaveTools鸣潮工具箱:三大核心功能重塑你的游戏体验
  • 单板硬件开发实战:从 15K Pin 原理图到信号完整性设计的 3 个核心工作流
  • 终极Emby Premiere解锁指南:免费享受所有高级功能的完整教程
  • T156:移动类型主表
  • 18650/21700/4680 圆柱电池规格对比:特斯拉技术演进与 5 大应用场景解析
  • 聚和配送老炮的回忆录-第二天
  • 适合创业者的亚洲EMBA权威综合实力榜单评测
  • ERM振动马达和LRA区别:工程师如何选择适合的振动反馈方案?
  • 离线语音转文字横评:免费、订阅、买断,踩坑三个月告诉你
  • 地月引力潮地震理论(假说)
  • Markdown 编辑器视频上传实战:ByteMD 插件开发与 XSS 防护
  • ISC DHCP完全指南:网络自动配置的终极解决方案
  • 大数据毕设选题推荐:基于大数据可视化的淘宝电子产品竞品分析系统的设计与实现 基于时序数据的淘宝电子产品销售趋势系统【附源码、mysql、文档、调试+代码讲解+全bao等】
  • 吉利银河A7 EM刷新吉尼斯世界纪录,实测行驶超2608公里
  • RGMII 与 GMII/MII 接口对比:12 引脚 vs 22 引脚的硬件成本与性能实测