《数据库原理》复习提纲 西北工业大学

《数据库原理》复习

  • 第一章 绪论
    • 1.1 引言
      • 1.1.1 数据、数据库、数据库系统、数据库管理系统
      • 1.1.2 数据库技术的产生与发展
      • 1.1.3 数据库技术的研究领域
    • 1.2 数据模型
      • 1.2.1 数据模型的要素
      • 1.2.2 概念模型
      • 1.2.3 数据模型
    • 1.3 数据库系统结构
      • 1.3.1 数据库系统内部的模式结构(从数据库管理系统角度看)
      • 1.3.2 数据库系统外部的体系结构(从数据库最终用户角度看)
    • 1.4 数据库管理系统
      • 1.4.1 数据库管理系统的功能与组成
      • 1.4.2 数据库系统的工作过程
    • 1.5 数据库工程与应用
      • 1.5.1 数据库设计的目标与特点
      • 1.5.2 数据库设计方法
      • 1.5.3 数据库设计步骤
      • 1.5.4 数据库应用
  • 第二章
    • 2.1 关系数据库概述
    • 2.2 关系数据结构
    • 2.3 关系的完整性
    • 2.4 关系代数
      • 2.4.1 关系代数概述
      • 2.4.2 传统的集合运算
      • 2.4.3 专门的关系运算
  • 第三章 关系数据库标准语言 SQL
    • 3.1 SQL 概述
      • 3.1.1 SQL 的特点
      • 3.1.2 SQL 语言的基本概念
    • 3.2 数据定义
    • 3.3 查询
      • 3.3.1 单表查询
      • 3.3.2 连接查询
      • 3.3.3 嵌套查询
      • 3.3.4 集合查询
    • 3.4 数据更新
      • 3.4.1 插入数据
      • 3.4.2 修改数据
      • 3.4.3 删除数据
    • 3.5 视图
      • 3.5.1 定义视图
      • 3.5.2 查询视图
      • 3.5.3 更新视图
      • 3.5.4 视图的作用
  • 第四章 规范化理论

参考教材:《数据库系统概论》(第五版) 高等教育出版社
专业:网络空间安全学院-信息安全

第一章 绪论

1.1 引言

1.1.1 数据、数据库、数据库系统、数据库管理系统

数据(Data)

  • 定义:描述事物的符号记录;
  • 组成数据的符号种类:数字,字符串,日期,逻辑值,文本,图形,图像,声音;
  • 数据的特点:数据与其语义是不可分的。

数据库(Database,DB)

  • 定义:长期储存在计算机内的、有组织的、可共享的数据集合;
  • 数据库的特征:①数据按一定的数据模型组织、描述和储存,②可为各种用户共享,③冗余度较小,④数据独立性较高,⑤易扩展。

数据库管理系统(Database Management System,DBMS)

  • 定义:位于用户与操作系统之间的一层数据管理软件。
  • 用途:科学地组织和存储数据、高效地获取和维护数据。
  • 功能:①数据定义功能,②数据操作功能,③数据库的运行管理功能,④数据库的建立和维护功能。

数据库系统(Database Sytem,DBS)

  • 定义:计算机系统中引入数据库后的系统构成。
  • 构成:①数据库,②DBMS及其开发工具,③应用系统,④数据库管理员,⑤用户。
    《数据库原理》复习提纲 西北工业大学_第1张图片

1.1.2 数据库技术的产生与发展

一、人工管理阶段;
二、文件系统阶段;
三、数据库系统阶段:

数据库系统的特点

  • 数据的管理者:数据库管理系统(DBMS);
  • 数据结构化;
  • 数据的共享性高(冗余度低,易于扩充);
  • 数据的独立性高。

DBMS 对数据的控制功能:
①数据的安全性 (Security)保护;
②数据的完整性(Integrity)检查;
③并发(Concurrency)控制;
④数据库恢复(Recovery)。

1.1.3 数据库技术的研究领域

一、数据库管理系统(DBMS)软件的研制;
二、数据库设计;
三、数据库理论。

1.2 数据模型

1.2.1 数据模型的要素

一、数据结构:对象类型的集合;
对象:①与数据类型、内容、性质有关的对象,②与数据之间联系有关的对象
二、数据操作:对数据库中各种对象(型)的实例(值),允许执行的操作及有关的操作规则;
数据操作的类型:查询&更新(插入、删除、修改);
三、数据的约束条件:一组完整性规则的集合;
完整性规则:给定的数据模型中数据及其联系,所具有的制约和存储规则。

1.2.2 概念模型

一、信息世界中的基本概念:

(1)实体(Entity)
客观存在并可相互区别的事物称为实体。
可以是具体的人、 事、 物或抽象的概念。

(2)属性(Attribute)
实体所具有的某一特性称为属性。
一个实体可以由若干个属性来刻画。

(3)(Key)
唯一标识实体的属性集称为码。

(4)(Domain)
属性的取值范围称为该属性的域。

(5)实体型(Entity Type)
用实体名及其属性名集合来抽象和刻画同类实体称为实体型。

(6)实体集(Entity Set)
同型实体的集合称为实体集。

(7)联系(Relationship)
现实世界中,事物内部以及事物之间的联系。
在信息世界中,反映为实体内部的联系和实体之间的联系。

实体内部的联系:组成实体的各属性之间的联系。
实体之间的联系:不同实体集之间的联系。

二、实体间的联系;
①一对一联系(1∶1)
②一对多联系(1∶n)
③多对多联系(m∶n)

三、概念模型的表示方法(E-R图)
在这里插入图片描述

(1)E-R 图包括实体属性联系三个要求;
(2)E-R 图表示方法:用矩形表示实体、用椭圆表示属性、用菱形表示联系。
属性和实体间、实体和联系间用线段连接。
《数据库原理》复习提纲 西北工业大学_第2张图片

1.2.3 数据模型

一、层次数据模型;
《数据库原理》复习提纲 西北工业大学_第3张图片

二、网状数据模型;
《数据库原理》复习提纲 西北工业大学_第4张图片

三、关系数据模型 :

(1)关系数据模型的数据结构;
基本数据结构:在用户观点下,关系模型中数据的逻辑结构是一张二维表

基本概念:

  • 关系(Relation):一个关系对应通常说的一张表;
  • 元组(Tuple):表中的一行即为一个元组;
  • 属性(Attribute):表中的一列即为一个属性,给每一个属性起一个名称即属性名;
  • 主码(Key):表中的某个属性组,它可以唯一确定一个元组;
  • (Domain):属性的取值范围;
  • 分量:元组中的一个属性值。
  • 关系模式:对关系的描述。

(2)关系数据模型的操纵及完整性约束;

  • 数据操作:查询,插入,删除,更新;
  • 数据操作是集合操作,操作对象和操作结果都是关系,即若干元组的集合;
  • 存取路径对用户隐蔽,用户只要指出“干什么”,不必详细说明“怎么干”;

完整性约束条件:
1.实体完整性
2.参照完整性
3.用户定义的完整性

(3)关系数据模型的存储结构;

  • 表以文件形式存储。
  • 有的DBMS一个表对应一个操作系统文件; 有的DBMS自己设计文件结构。

(4)关系数据模型的优缺点;

优点:

  • 建立在严格的数学概念的基础上;

  • 概念单一。数据结构简单清晰,用户易懂易用;

    • 实体和各类联系都用关系表示;
    • 对数据的检索结果也是关系;
  • 关系模型的存取路径对用户透明;

    • 具有更高的数据独立性,更好的安全保密性,
    • 简化了程序员的工作和数据库开发建立的工作;

缺点:

  • 存取路径对用户透明导致查询效率往往不如非关系数据模型;
    • 为提高性能,必须对用户的查询请求进行优化;
    • 增加了开发DBMS的难度;

(5)典型的关系数据库系统

  • oracle
  • db2
  • sqlserver
  • sybase
  • mysql

四、 对象模型
面向对象数据模型是用面向对象的思维方式与方法来描述客观实体,在继承关系数据库系统的已有的优势特性基础之上,支持面向对象建模,支持对象存取与持久化,支持代码级面向对象数据操作,是现在较为流行的新型数据模型。

1.3 数据库系统结构

1.3.1 数据库系统内部的模式结构(从数据库管理系统角度看)

一、数据库系统模式的概念
(Type)
对某一类数据的结构和属性的说明

(Value)
是型的一个具体赋值

模式(Schema)
①数据库逻辑结构和特征的描述;
②是型的描述;
③反映的是数据的结构及其联系;
④模式是相对稳定的

模式的一个实例(Instance)
①模式的一个具体值;
②反映数据库某一时刻的状态;
③同一个模式可以有很多实例;
④实例随数据库中的数据的更新而变动

二、数据库系统的三级模式结构
《数据库原理》复习提纲 西北工业大学_第5张图片

外模式(子模式,用户模式)

  • 数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述;
  • 数据库用户的数据视图,是与某一应用有关的数据的逻辑表示

地位:介于模式与应用之间。

  • 模式(1)— 外模式(n):
    ① 外模式通常是模式的子集;
    ②一个数据库可以有多个外模式,反映了不同用户的应用需求、看待数据的方式、对数据保密的要求;
    ③对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同。

  • 外模式(1)— 应用(n):
    ①同一外模式也可以为某一用户的多个应用系统所使用;
    ②但一个应用程序只能使用一个外模式。

模式(逻辑模式,概念模式)

  • 一个数据库只有一个模式。
  • 数据库中全体数据的逻辑结构和特征的描述;
  • 所有用户的公共数据视图,综合了所有用户的需求。

地位:数据库系统模式结构的中间层。

  • 与数据的物理存储细节和硬件环境无关
  • 与具体的应用程序、开发工具及高级程序设计语言无关

作用:

  • 定义数据逻辑结构(数据项的名字、类型、取值范围等);
  • 定义数据之间的联系;
  • 定义与数据有关的安全性、完整性要求。

内模式(存储模式)

  • 一个数据库只有一个内模式。
  • 是数据物理结构和存储方式的描述
  • 是数据在数据库内部的表示方法。

三、数据库的二级映象功能与数据独立性
三级模式:是对数据的三个抽象级别(外模式,模式,内模式)
二级映象:在 DBMS 内部实现这三个抽象层次的联系和转换
①外模式/模式映象;
②模式/内模式映象;

什么是外模式/模式映象

  • 定义了外模式与模式之间的对应关系;
  • 对每一个外模式,都有一个外模式/模式映像,
  • 该映像定义:通常包含在各外模式的描述中。

外模式/模式映象的用途(保证数据的逻辑独立性)

  • 当模式改变时,数据库管理员修改外模式/模式映像,使外模式保持不变。
  • 应用程序是依据数据的外模式编写的,应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

什么是模式/内模式映象

  • 定义了数据全局逻辑结构与存储结构之间的对应关系。 例如,说明逻辑记录和字段在内部是如何表示的;
  • 数据库中模式/内模式映象是唯一的;
  • 该映象定义:通常包含在模式描述中。

模式/内模式映象的用途(保证数据的物理独立性)

  • 当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变;
  • 应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。

1.3.2 数据库系统外部的体系结构(从数据库最终用户角度看)

一、单用户结构;
二、主从式结构;
三、分布式结构;
四、客户/服务器结构

1.4 数据库管理系统

1.4.1 数据库管理系统的功能与组成

一、数据定义
①定义构成数据库结构的模式、存储模式和外模式;
②定义各个外模式与模式之间的映射;
③定义模式与存储模式之间的映射;
④定义有关的约束条件;

二、数据操纵
查询/检索,插入,修改/更新,删除

三、数据库运行管理
对数据库的运行管理,是DBMS运行时的核心部分,包括:

  • 对数据库进行并发控制
  • 安全性检查
  • 完整性约束条件的检查和执行
  • 数据库的内部维护

所有访问数据库的操作:

  • 都要在上述控制程序的统一管理下进行;
  • 以保证数据的安全性、完整性、一致性以及多用户对数据库的并发使用。

四、数据组织、存储和管理
数据库中需要存放多种数据:
如:数据字典、用户数据、存取路径等。

DBMS负责分门别类的组织、存储和管理这些数据:
确定以何种文件结构和存取方式物理地组织这些数据,如何实现数据之间的联系等,
以便提高存储空间利用率以及提高随机查找、顺序查找、增、删、改等操作的时间效率。

五、数据库的建立和维护
建立数据库:
数据库初始数据的输入与数据转换等。

维护数据库包括:
数据库的转储与恢复;
数据库的重组织与重构造;
性能的监视与分析。

1.4.2 数据库系统的工作过程

《数据库原理》复习提纲 西北工业大学_第6张图片
(1)应用程序A向DBMS发出从数据库读数据记录的命令;
(2)DBMS对该命令进行语法语义检查,并调用应用程序A对应的子模式(外模式),检查A的存取权限,决定是否执行该命令;如果拒绝执行,则向用户返回错误信息。
(3)决定执行该命令后,DBMS调用模式,依据外模式/模式映像的定义,确定应读入模式中的哪些记录;
(4)DBMS调用物理模式(内模式),依据模式/内模式映像的定义,决定应从哪个文件、用什么存取方式、读入哪个或哪些物理记录;
(5)DBMS向操作系统发出执行读取所需物理记录的命令
(6)操作系统执行读数据的有关操作
(7)操作系统将数据从数据库的存储区送至缓冲区
(8)DBMS依据外模式/模式映像的定义,导出应用程序A所要读取的记录格式
(9)DBMS将数据记录从系统缓冲区传送到应用程序A的用户工作区
(10)DBMS向应用程序A返回命令执行情况的状态信息;
(12)应用程序A根据返回的状态信息决定是否使用程序变量区中的数据。

1.5 数据库工程与应用

1.5.1 数据库设计的目标与特点

  • 数据库设计的目标:在DBMS的支持下,按照应用的要求,为某一部门或组织设计一个结构合理、使用方便、效率较高的数据机器应用系统;
  • 数据库设计包含两方面内容:
    一、结构(数据)设计,也就是设计数据库框架或数据库;
    二、行为(处理)设计,即设计应用程序、事务处理等。

1.5.2 数据库设计方法

使用工程化的规范设计方法;
核心与关键是逻辑数据库设计和物理数据库设计;
一、逻辑数据库设计:是根据用户要求和特定数据库管理系统的具体特点,以数据库设计理论为依据,设计数据库的全局逻辑结构和每个用户的局部逻辑结构。
二、物理数据库设计:是在逻辑结构确定之后,设计数据库的存储结构及其他实现细节。

1.5.3 数据库设计步骤

《数据库原理》复习提纲 西北工业大学_第7张图片

1.5.4 数据库应用

《数据库原理》复习提纲 西北工业大学_第8张图片

一、用户;
二、应用程序员;
三、数据库管理员(DBA )
①设计与定义数据库系统;
②帮助最终用户使用数据库系统;
③监督与控制数据库系统的使用和运行;
④改进和重组数据库系统,调优数据库系统的性能;
⑤转储与恢复数据库;
⑥重构数据库 ;
四、系统分析员;
五、数据库设计人员

第二章

2.1 关系数据库概述

一、关系数据结构;
二、关系操作集合;
三、关系完整性约束

2.2 关系数据结构

一、关系

  • 域(Domain)
  • 笛卡尔积(Cartesian Product)

《数据库原理》复习提纲 西北工业大学_第9张图片
在这里插入图片描述在这里插入图片描述

  • 关系(Relation):《数据库原理》复习提纲 西北工业大学_第10张图片

  • 属性:实体所具有的某一特性
    主属性:候选码的诸属性称为主属性;
    非主属性 :不包含在任何候选码中的属性。

《数据库原理》复习提纲 西北工业大学_第11张图片

  • 码:能够唯一标识一条记录的属性或属性集。
  • 候选码(Candidate Key):若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码。
    • 最简单的情况,候选码只包含一个属性。
    • 最极端的情况,关系模式的所有属性组是这个关系模式的候选码,称为全码(All-key)。
  • 主码(Primary Key):若一个关系有多个候选码,则选定其中一个为主码。
  • 外码 :如果一个关系中的一个属性(该属性不能是候选码)是另外一个关系中的主码,则这个属性为外码。

主码和外码的作用?

主码的作用:
主码的作用是保证实体的完整性。

外键的作用:
保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。使两张表形成关联,外键只能引用外表中的列的值或使用空值。

  • 三类关系:
    (1) 基本关系(基本表或基表):实际存在的表,是实际存储数据的逻辑表示;
    (2) 查询表:查询结果对应的表;
    (3) 视图表:由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据。

  • 基本关系的性质:
    (1)列是同质的(Homogeneous);
    (2)不同的列可出自同一个域;
    (3)列的顺序无所谓;
    (4)任意两个元组不能完全相同;
    (5)行的顺序无所谓;
    (6)分量必须取原子值。

  • 什么是关系模式?
    关系模式是对关系的描述,是型,关系是值。

关系模式描述:
1.元组集合(=关系)的结构:

  • 属性构成
  • 属性来自的域
  • 属性与域之间的映象关系

2.元组语义
3.完整性约束条件
4.属性间的数据依赖关系集合

定义关系模式:关系的描述称为关系模式。
形式化地表示为:R(U,D,DOM,F)

  • R为关系名,
  • U为组成该关系的属性名集合,
  • D为U中属性所来自的域,
  • DOM为属性向域的映像集合,
  • F为属性间数据依赖关系集合

通常可以简记为: R (U) 或 R (A1,A2, … ,An)

  • R=关系名,
  • A1,A2, … ,An为属性名

关系模式与关系
关系模式:对关系的描述;静态的、稳定的
关系:关系模式在某一时刻的状态或内容;动态的、随时间不断变化的
关系模式和关系往往统称为关系,通过上下文加以区别。

三、关系数据库
关系数据库:在一个给定的应用领域中,所有关系的集合构成一个关系数据库。
关系数据库的型与值:
关系数据库的型(=关系数据库模式),是对关系数据库的的描述,包括若干域的定义,以及在这些域上定义的若干关系模式。
关系数据库的值:这些关系模式在某一时刻对应的关系的集合。

2.3 关系的完整性

一、实体完整性
若属性A是基本关系R的主属性,则A不能取空值。
(关系数据库中每个元组应该是可区分的,是唯一的)

二、参照完整性(外码,参照关系,被参照关系/目标关系);
《数据库原理》复习提纲 西北工业大学_第12张图片

《数据库原理》复习提纲 西北工业大学_第13张图片

三、用户定义的完整性
针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。

2.4 关系代数

2.4.1 关系代数概述

一、关系代数运算三要素

  • 运算对象:关系
  • 运算符:四类
  • 运算结果:关系

二、关系代数运算的分类

《数据库原理》复习提纲 西北工业大学_第14张图片

三、表示记号
《数据库原理》复习提纲 西北工业大学_第15张图片
《数据库原理》复习提纲 西北工业大学_第16张图片
《数据库原理》复习提纲 西北工业大学_第17张图片
《数据库原理》复习提纲 西北工业大学_第18张图片

2.4.2 传统的集合运算

一、并∪(Union);
《数据库原理》复习提纲 西北工业大学_第19张图片
二、差−(Difference);
《数据库原理》复习提纲 西北工业大学_第20张图片
三、交∩(Intersection);
《数据库原理》复习提纲 西北工业大学_第21张图片

四、广义笛卡尔积×(Extended Cartesian Product)

《数据库原理》复习提纲 西北工业大学_第22张图片
与笛卡尔积的区别?
笛卡尔积中的元素是域中的单个元素;
广义笛卡尔积中的元素是元组。

2.4.3 专门的关系运算

一、选择σ(Selection);
《数据库原理》复习提纲 西北工业大学_第23张图片

二、投影π(Projection);
《数据库原理》复习提纲 西北工业大学_第24张图片

三、连接⋈(Join)(连接也称为 θ连接)
《数据库原理》复习提纲 西北工业大学_第25张图片

(1)等值连接;
《数据库原理》复习提纲 西北工业大学_第26张图片

(2)自然连接;
《数据库原理》复习提纲 西北工业大学_第27张图片

(3)一般连接;
(4)左连接;
(5)右连接;
(6)全外连接 ;

四、除÷(Division)
(象集和投影)
《数据库原理》复习提纲 西北工业大学_第28张图片
《数据库原理》复习提纲 西北工业大学_第29张图片

第三章 关系数据库标准语言 SQL

SQL 语言集数据定义语言 DDL、数据查询语言 DQL、数据操纵语言 DML、数据控制语言DCL的功能于一体。

3.1 SQL 概述

一、SQL-86;

  • 第一个SQL标准,
  • 由美国国家标准局公布,
  • 1987年ISO通过。

二、SQL-89;
三、SQL-92;
四、SQL3
《数据库原理》复习提纲 西北工业大学_第30张图片

3.1.1 SQL 的特点

一、综合统一;
二、高度非过程化;
三、面向集合的操作方式;
四、同一种语法结构提供两种使用方式;
五、语言简捷,易学易用

3.1.2 SQL 语言的基本概念

一、基本表
本身独立存在的表,一个关系对应一个表
一个(或多个)基本表对应一个存储文件
一个表可以带若干索引,索引也存放在存储文件中

二、视图
从一个或几个基本表或视图导出的表
是虚表,只存放视图的定义而不存放对应数据

三、存储文件
存储文件的逻辑结构组成了关系数据库的内模式
存储文件的物理结构是任意的,对用户是透明的

《数据库原理》复习提纲 西北工业大学_第31张图片

3.2 数据定义

一、定义表(模式)

  • 创建表
  • 删除表
  • 修改表定义

二、定义视图(外模式)

  • 创建视图
  • 删除视图
  • 间接修改视图定义:删除+创建

三、定义索引(内模式)【不做要求】
创建索引
删除索引
间接修改索引定义:删除+创建
《数据库原理》复习提纲 西北工业大学_第32张图片

3.3 查询

《数据库原理》复习提纲 西北工业大学_第33张图片

3.3.1 单表查询

《数据库原理》复习提纲 西北工业大学_第34张图片《数据库原理》复习提纲 西北工业大学_第35张图片

3.3.2 连接查询

一、广义笛卡尔积
二、等值与非等值连接查询
三、自身连接查询
四、外连接查询
五、复合条件连接查询

3.3.3 嵌套查询

一、嵌套查询的分类
不相关子查询:子查询的查询条件不依赖于父查询
相关子查询:子查询的查询条件依赖于父查询

二、引出子查询的谓词
带有 IN 谓词的子查询
带有比较运算符的子查询
带有 ANY 或 ALL 谓词的子查询
带有 EXISTS 谓词的子查询

3.3.4 集合查询

一、并操作(UNION);
二、交操作(INTERSECT);
三、差操作(MINUS)

3.4 数据更新

3.4.1 插入数据

《数据库原理》复习提纲 西北工业大学_第36张图片
《数据库原理》复习提纲 西北工业大学_第37张图片

3.4.2 修改数据

《数据库原理》复习提纲 西北工业大学_第38张图片

3.4.3 删除数据

《数据库原理》复习提纲 西北工业大学_第39张图片

3.5 视图

一、视图是虚表,是从一个或几个基本表(或视图)导出的表
二、数据库系统只存放视图的定义,不会出现数据冗余
三、基表中的数据发生变化,从视图中查询出的数据也随之改变
四、基于视图的操作
定义视图(DDL):
(1)、建立;
(2)、定义基于该视图的新视图;
(3)、删除
查询(DML)
受限更新(DML)

3.5.1 定义视图

1、建立视图
《数据库原理》复习提纲 西北工业大学_第40张图片

(1) 行列子集视图;
(2) WITH CHECK OPTION 的视图;
(3) 基于多个基表的视图
(4) 基于视图的视图
(5) 带表达式的视图
(6) 分组视图
(7) 一类不易扩充的视图

  1. 删除视图:DROP VIEW <视图名> [CASCADE]

3.5.2 查询视图

一、视图实体化法:执行流程
(1)进行有效性检查,检查所查询的视图是否存在。如存在,则从数据字典中取 出视图定义;
(2)执行视图定义,将视图临时实体化,生成临时表;
(3)将查询视图转换为查询临时表;
(4)查询 完毕删除被实体化的视图(临时表)

二、视图消解法:执行流程
(1)进行有效性检查,检查查询的表、视图等是否存在。如果存在,则从数据字典中 取出视图的定义
(2)把视图定义中的子查询与用户的查询结合起来,转换成等价的对基本表的查询;
(3)执行修 正后的查询

3.5.3 更新视图

对有[WITH CHECK OPTION]的视图进行INSERT、UPDATE和DELETE时,系统要自动检查是否符合原定 义视图子查询中的<条件表达式>

3.5.4 视图的作用

一、视图能够简化用户的操作
二、视图使用户能以多种角度看待同一数据
三、视图对重构数据库提供了一定程度的逻辑独立性
四、视图能够对机密数据提供安全保护
五、适当的利用视图可以更清晰地表达查询

第四章 规范化理论

1. 什么叫规范化?
用形式更简洁、结构更规范的关系取代原有关系的过程。

2. 非规范化的关系会导致什么问题?导致问题的原因是什么?如何解决?

  • ①数据冗余,更新异常  ②插入、删除异常
  • 原因:关系模式不合理
  • 解决方法:如果一个关系中,存储了两类以上实体的数据,一般应将其分解为多个关系,使每个关系只有一类实体。

3. 一个关系的属性间,存在几种对应关系?

  • 一对一联系
    设X,Y为关系中的属性或属性组,如果对于X中的任一具体值Y中至多有一个值与之对应,称X,Y这两个属性之间是一对一联系。

  • 一对多联系
    如果属性值集合X中的任一个具体值,至多与Y中的一个值相对应,而Y中的任一个具体值却可以和X中的多个值相对应,则称两个属性间从X到Y为m:1的联系或从Y到X是1:m的联系。

  • 多对多联系
    在X,Y两个属性值集中,如果任一个值都可以至多和另一个属性值集中多个值对应,反之亦然,则称属性X和Y是m:n关系。

4. 掌握概念或定义:数据依赖、函数依赖、部分函数依赖、完全函数依赖、传递依赖

  • 数据依赖:现实世界属性间相互联系的抽象,是世界内在的性质,是语义的体现。
    分为:函数依赖(FD),多值依赖(MVD),连接依赖(JD)

  • 函数依赖:在关系R中,X、Y为R的两个属性(组),如果对于R的所有关系r,都存在:对于X的每一个具体值,Y都只有一个具体值与之对应,则称属性Y函数依赖于属性X。
    在这里插入图片描述
    在这里插入图片描述
    《数据库原理》复习提纲 西北工业大学_第41张图片

  • 完全函数依赖:
    在R(U)中,若 X → Y ,并且对于X的任何一个真子集X’,都有 X ′↛Y,则称Y对X完全函数依赖,记作 X → F→ Y。

  • 部分函数依赖:
    在R(U)中,若 X → Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作 X → P→ Y 。

  • 传递依赖:
    在R(U)中,如果 X → Y ( Y ⊈ X ), Y↛X,Y → Z,Z ⊈ Y ,则称Z对X传递函数依赖,记为 X
    → 传 递→ Z。

5. 码的唯一性与函数依赖的联系和区别?

  • 码是由一个或多个属性组成的、可唯一标识元组的最小属性组
  • 与码的唯一性不同,函数依赖的决定因素可能是唯一的,也可能是不唯一的

6. 何谓 1NF?满足 1NF 的关系模式存在什么问题?

  • 如果关系模式R中不包含多值属性,则R满足第一范式R∈1NF
  • 存在:数据冗余,更新异常,插入删除异常

7. 何谓 2NF?满足 2NF 的关系模式,解决了什么问题?还存在什么问题?

  • 若R∈1NF,且每一个非主属性完全函数依赖于R任何一个候选码,则R满足第二范式R∈2NF
  • 一定程度上解决原1NF数据冗余,更新异常,插入删除异常的问题
  • 存在:数据冗余,更新异常

8. 何谓 3NF?满足 3NF 的关系模式,解决了什么问题?还存在什么问题?

  • 若R∈2NF,且它的每一个非主属性都不传递依赖于任何候选码,则称R满足第三范式R ∈3NF
  • 在一定程度上解决原2NF关系中存在的数据冗余、更新异常等问题
  • 存在:数据冗余的问题

9. 何谓 BCNF?满足 BCNF 的关系模式,解决了什么问题?还存在什么问题?

  • 设关系模式R∈1NF,若 X→Y且Y⊈X时X必含有码,则R∈BCNF
    换言之,在关系模式R中,如果每一个决定因素都包含候选码,则R∈BCNF。
  • 解决:消除了数据冗余、插入和删除异常
  • 存在:更新异常

你可能感兴趣的:(专业课,mysql,sqlserver,sql,数据库)