[笔试时]如何抓住数据库的一些要点

本文深入解析数据库系统概论,详细阐述DBMS数据控制功能、数据模型组成、三级模式结构、关系完整性约束、查询语句应用、触发器作用、事务四大特性等核心知识点,助力读者系统掌握数据库原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文参考了王珊和萨师煊的《数据库系统概论》,其中只是记录看书过程中需要注意的要点,完全版可以查看这篇文章:找工作笔试面试那些事儿(9)—数据库知识总结(1)

第一、二章

1、DBMS必须提供以下几方面的数据控制功能

  • 数据的安全性保护
  • 数据的完整性检查
  • 并发控制
  • 数据库恢复

2、数据模型的组成要素包括

  • 数据结构
  • 数据操作
  • 完整性约束(实体完整性、参照完整性、用户定义的完整性)

3、数据库系统的三级模式结构

  • 外模式(用户模式)
  • 模式
  • 内模式(存储模式)

4、关系的三类完整性约束

  • 实体完整性规则:若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取控制
  • 参照完整性规则:若属性(或属性组)F是基本关系R的外码,他与基本关系S的主码K相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
    • 或者取空值(F的某个属性值均为空值)
    • 或者等于S中某个元组的主码值
      主码外码
  • 用户定义完整性:必须遵循以上两个约束

第三章

查询语句的内容请查看这篇文章:[笔试时]SQL练练手

第五章

触发器

  • 定义:是用户定义在关系表上的一类由事件驱动的特殊过程
  • 作用:一旦定义,任何用户对表的增删改操作均由服务器自动激活相应的触发器,在DBMS核心层进行集中的完整性控制
  • 激活触发器执行顺序:
    • 执行该表上的BEFORE触发器
    • 激活触发器的SQL的语句
    • 执行该表上的AFTER触发器

第六章

1、第一范式

每一个分量必须是不可分的数据项。简单的说,就是每一个列(属性)只有一个,没有重复。
如表5-5不符合第一范式,应当改为表5-6
实例

2、第二范式

若R∈1NF,且每一个非主属性完全函数1依赖于码,则R∈2NF。

关系模式S-L-C(Sno, Cno, Sdept, Sloc, Grade)
(Sno, Cno) 推导出Grade
Sno → Sdept, (Sno, Cno)推导出Sdept
Sno → Sloc,(Sno, Cno)推导出Sdept
例子中,主属性是(Sno, Cno) ,但是非主属性Sno∈(Sno, Cno) ,也存在Sno→Sdept,Sno→Sloc,可知Sno部分依赖于码Sdept,Sloc,因此S-L-C∉2NF
解决方法: 将关系模式分解为两个关系模式,如下

  • SC(Sno, Cno, Grade)

  • S-L(Sno, Sdept, Sloc)

3、第三范式

关系模式R中若存在这样的码X,属性组Y及非主属性Z( ZY )使得X→Y, Y→Z成立,YX,则称R∈3NF(简单说就是不存在传递依赖)

关系模式SC(Sno, Cno, Grade)∈3NF,但是 S-L(Sno, Sdept, Sloc)∉3NF,原因是>>Sno→Sdept,Sdept→Sloc,因此有Sno→Sloc,即Sno传递依赖于Sloc
解决方法:将关系模式分解为两个关系模式,如下

  • S-D(Sno, Sdept)

  • D-L(Sdept, Sloc)

4、BCNF

关系模式R∈1NF。若X→Y且 YX 时X必含有候选码,则R∈BCNF

关系模式STJ(S,T,J)中,S表示学生,T表示教师,J表示课程。每一个教师只教一门课。每门课有 若干个教师,某一学生选定某门课,就对应一个固定的教师。
由语义可得到如下函数依赖: (S,J)->T;(S,T)->j;T->J。其中 (S,J),(S,T)都是候选键。 STJ是3NF,因为没有任何非主属性对键传递依赖或部分依赖。但STJ不是BCNF关系,因为T是决定因素,而T不包含键。
**解决方法:**STJ可以分解为两个关系模式,如下

  • ST(S, T)
  • TJ (T, J)
5、第四范式

关系模式R∈1NF,如果对于R的每个费平凡多值依赖 2 X→→Y( YX ),X都含有码,则称R∈4NF

6、总结


  • 根本方法就是对关系模式进行分解成为多个关系模式
    消除
  • 模式分解的几个重要事实是:

  • 若要求分解保持函数依赖,那么模式分离总可以达到3NF,但不一定能达到BCNF
  • 若要求分解既保持函数依赖,又具有无损连接性,可以达到3NF,但不一定能达到BCNF
  • 若要求分解具有无损连接性,那一定可达到4NF

第十章

数据库事务的四个特性:

  • 原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。
  • 一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另一个一致状态。一致状态的含义是数据库中的数据应满足完整性约束。
  • 隔离性(Isolation):多个事务并发执行时,一个事务的执行不应影响其他事务的执行。
  • 持久性(Durability):已被提交的事务对数据库的修改应该永久保存在数据库中。

  1. 在R(U)中,如果X → Y ,并且对于X的任何一个真子集X’,都有X’不能推导出Y完全函数依赖,则称为Y对X的完全函数依赖
  2. 设R(U)是属性集U上的一个关系模式。X,Y,Z是U的子集,并且Z = U - X - Y。关系模式R(U)中多值依赖X→→Y成立,当且仅当对R(U)的任意关系r,给定的一对(x, z)值,有一组Y的值,这组值仅仅决定于x值而与z值无关。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值