news 2026/4/24 10:51:24

数据库期末复习笔记:SQL查询与数据库理论核心知识点总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据库期末复习笔记:SQL查询与数据库理论核心知识点总结

数据库期末复习笔记:SQL查询与数据库理论核心知识点总结

本文整理自手写笔记,涵盖数据库系统的核心概念、SQL高级查询技巧、关系模型完整性约束、函数依赖与范式理论、事务隔离级别等内容,适合备考数据库课程的同学们快速回顾重点。


📚 一、SQL 查询语句精讲(含常见题目解析)

以下是一些典型的 SQL 查询题型及其解答思路,适用于数据库期末考试中的实践题部分。

✅ 示例 1:筛选特定课程

SELECT*FROMcourseWHEREchours>=48ANDcnameLIKE'%数据只%';

说明:查找学时大于等于 48 且课程名称包含“数据只”的课程。


✅ 示例 2:按课程分组统计并过滤

SELECTcnoFROMtcGROUPBYcnoHAVINGAVG(tchour)>=40ANDCOUNT(*)>=3;

说明:找出教师授课中平均课时 ≥ 40 且授课次数 ≥ 3 的课程编号。


✅ 示例 3:多条件组合查询

SELECT*FROMcourseWHEREchour>=60AND(cname='数据库原理'ORcname='信息技术概论');

说明:查找学时 ≥ 60 并且是“数据库原理”或“信息技术概论”的课程。


✅ 示例 4:连接查询 + 分组统计

SELECTcno,COUNT(*)FROMtcWHEREtchour=32GROUPBYcnoHAVINGCOUNT(*)>4;

说明:找出每门课程中教学时长为 32 的教师人数超过 4 人的课程。


✅ 示例 5:三表连接查询

SELECTcname,tname,tchourFROMcourseJOINtcONcourse.cno=tc.cnoJOINteacherONteacher.tno=tc.tnoWHEREterm='2015-2016-1';

说明:查询 2015-2016 学年第一学期开设的课程名、教师姓名和教学时长。


✅ 示例 6:子查询嵌套统计

SELECTcourse.cno,COUNT(tcno)FROMcourseLEFTJOINtcONcourse.cno=tc.cnoGROUPBYcourse.cno;

说明:统计每门课程有多少位教师授课(使用LEFT JOIN确保所有课程都出现)。


✅ 示例 7:集合操作与子查询

SELECTDISTINCTsnoFROMscWHEREtnoIN(SELECTtnoFROMtcWHEREsnoIN(SELECTsnoFROMscWHEREscore>(SELECTAVG(score)FROMscWHEREtno='Z')));

说明:找出那些曾教过成绩高于某教师(tno=‘Z’)平均分学生的教师所教的所有学生。


✅ 示例 8:比较分数与平均值

SELECTsnoFROMscWHEREtno='2S1'ANDscore>(SELECTAVG(score)FROMscWHEREtno='Z');

说明:查找在教师 ‘2S1’ 教授的课程中,成绩高于教师 ‘Z’ 所教课程平均分的学生。


🔧 二、数据库体系结构与模式

🌐 三级模式结构

模式说明
外模式(用户级)用户看到的数据视图,即逻辑上的数据子集。
概念模式(逻辑模式)全体数据的全局逻辑结构,定义了整个数据库的组织方式。
内模式(存储模式)数据的物理存储结构,如索引、存储位置等。

💡用户与数据库接口:通过外模式进行交互。


🛠️ 三、关系模型三大完整性约束

  1. 实体完整性(主键约束)
    • 主键不能为空,且唯一。
  2. 参照完整性(外键约束)
    • 外键必须引用存在的主键值。
  3. 用户定义完整性(自定义规则)
    • 如字段取值范围、检查约束等。

⚠️DISTINCT关键字用于去重;两阶段锁协议可保证调度的可串行性。


🔗 四、函数依赖与候选键推导

函数依赖公理

  • 自反律:若 Y ⊆ X,则 X → Y
  • 增广律:若 X → Y,则 XZ → YZ
  • 传递律:若 X → Y,Y → Z,则 X → Z

三级模式再强调

  • 外模式 → 用户级
  • 概念模式 → 逻辑级
  • 内模式 → 存储级

✅ 候选键求解示例

设关系 R(A,B,C,D,E),已知函数依赖集 F:

F = {A→BCDE, B→D, C→C, D→D, E→ABCE}
步骤 1:求每个属性的闭包
  • A⁺ = ABCDE → A 是候选键
  • B⁺ = BD → 不是
  • C⁺ = C → 不是
  • D⁺ = D → 不是
  • E⁺ = ABCE → E 是候选键

→ 初步得到候选键:A、E

步骤 2:尝试组合
  • BC⁺ = BDCEA → 包含全部属性 → BC 是候选键
  • CD⁺ = CDEAB → 也是候选键

最终结果:R 的候选键有A、E、BC、CD4 个

✅ 注意:候选键是能唯一标识元组的最小属性集。


🔒 五、事务隔离级别与并发控制

隔离级别特点解决问题
一级(读未提交)只加 X 锁,事务结束释放无法避免脏读
二级(读已提交)读前加 S 锁,读后立即释放避免脏读,但可能不可重复读
三级(可重复读)S 锁持续到事务结束避免不可重复读
四级(序列化)排他锁 X 锁完全避免并发问题

❌ 脏读:读取了其他事务尚未提交的数据
❌ 不可重复读:同一事务多次读取相同数据,结果不一致
❌ 幻读:插入/删除导致查询结果变化


💥 六、事务故障与恢复机制

事务故障类型

  • 事务内部错误:如程序异常、违反约束
  • 系统故障:OS 或 DBMS 崩溃,内存丢失,但磁盘保留
  • 媒体故障:硬盘损坏,导致数据永久丢失

恢复策略

  • 日志文件:记录事务开始、更新、提交/回滚
  • 检查点机制:定期保存状态,加快恢复速度
  • UNDO/REDO:根据日志回滚或重做操作

🧠 七、数据库设计要点总结

ER 模型(实体-联系模型)

  • 实体:现实世界中的对象
  • 属性:描述实体的特征
  • 联系:实体之间的关系(一对一、一对多、多对多)

💡 概念模型独立于操作系统和 DBMS,是数据库设计的基础。


🎯 总结:数据库期末复习重点清单

类别核心知识点
SQL 查询SELECT、JOIN、GROUP BY、HAVING、子查询、DISTINCT
数据库结构三级模式、外模式、概念模式、内模式
完整性约束实体完整性、参照完整性、用户定义完整性
函数依赖闭包计算、候选键判断、范式分析
事务管理ACID 特性、隔离级别、并发控制、恢复机制
设计方法ER 模型、关系模式转换、规范化

✅ 温馨提示

  • 多练习 SQL 查询题,尤其是涉及多表连接、聚合函数和子查询的题目。
  • 理解函数依赖和候选键的推导过程,这是范式分析的基础。
  • 掌握事务隔离级别的区别,特别是“脏读”、“不可重复读”、“幻读”的含义。
  • 重视数据库恢复机制,理解日志的作用。

📌最后提醒:数据库不仅是背公式,更是理解和应用的过程。建议结合课本+真题+实验反复巩固!


📝 本文基于手写笔记整理而成,如有错漏欢迎指正。祝大家数据库期末考试顺利通过!🎉

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 21:23:24

Open-AutoGLM独立上线:3个你必须立即迁移项目的理由

第一章:Open-AutoGLM独立上线的背景与意义随着大模型技术的快速发展,通用语言模型在多任务自动化、智能推理和自然语言理解方面展现出巨大潜力。然而,大多数现有系统仍依赖于封闭架构或云端集中式服务,限制了其在隐私敏感场景、边…

作者头像 李华
网站建设 2026/4/24 4:05:35

为什么你的Open-AutoGLM毫无输出?(20年架构师亲授排查逻辑)

第一章:Open-AutoGLM无输出问题的宏观认知在使用 Open-AutoGLM 模型进行推理时,部分用户反馈出现“无输出”现象,即模型调用后返回空结果或长时间无响应。这一问题并非单一因素导致,而是涉及模型加载、输入预处理、运行时环境配置…

作者头像 李华
网站建设 2026/4/24 0:06:32

PaddlePaddle政府公文写作助手

PaddlePaddle政府公文写作助手 在政务办公场景中,一份标准通知的撰写往往需要耗费公务员近半小时:从翻找历史模板、核对格式规范,到组织语言、反复校验——这一系列重复性劳动不仅效率低下,还容易因人为疏忽导致格式错误或用语不当…

作者头像 李华
网站建设 2026/4/24 3:32:59

自考必看!10个降AI率工具测评榜单

自考必看!10个降AI率工具测评榜单 自考论文降AI率工具测评:为什么你需要一份靠谱榜单? 随着人工智能技术的快速发展,AIGC(人工智能生成内容)检测系统在学术领域的应用愈发严格。对于自考学生而言&#xff0…

作者头像 李华
网站建设 2026/4/22 21:27:50

PaddlePaddle成语接龙智能系统

PaddlePaddle成语接龙智能系统 在语文课堂上,老师出题“请用‘画龙点睛’开始接龙”,学生们纷纷翻字典、查手机,却仍可能接出个生僻又不通顺的“精卫填海”——形式对了,语义却断了。这正是传统成语接龙系统的典型困境&#xff1a…

作者头像 李华
网站建设 2026/4/23 11:23:03

两处逻辑缺陷如何让黑客在数秒内获取Linux根权限 — CVE-2025-6018与CVE-2025-6019详解

两个逻辑缺陷如何在数秒内让黑客获取Linux根权限 — CVE-2025–6018 与 CVE-2025–6019 详解 没有内存破坏。没有内核漏洞。仅仅是巧妙地利用了环境变量和一个行为不当的磁盘工具。这是近年来最令人惊异的Linux权限提升案例之一。 两个逻辑缺陷,一条通向root的路径 …

作者头像 李华