ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

最简单的数据库入门教程—04—01—关系模型与规范化理论

2020-03-29 16:54:47  阅读:159  来源: 互联网

标签:关系 依赖 定义 04 函数 入门教程 01 集合 属性


关系模型与规范化理论


目录

关系模式

简介

  • 对关系的描述
  • 静态的、稳定的

形式化定义

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

域(D)

  • 一组具有相同数据类型的值的集合
  • 例如:Float、String、Enum

属性(U)

  • 用于标定同一类关系不同位置上的分量
  • 例如:学生关系中的 "学号"属性,有"张三"在"学号"上的分量为23333
超码

R<U,F>中,K$\subseteq \(U,K\)\stackrel{P}{\longrightarrow}$U

候选码
  • 定义:值能唯一地标识一个元组的属性组
    • R<U,F>中,K$\subseteq \(U,K\)\stackrel{F}{\longrightarrow}$U
  • 特点:候选码的任意一个真子集都不是候选码。
  • 分类:
    • 全码:所有属性组是这个关系模式的候选码
    • 主码:选定其中一个候选码作为关系的标识
    • 主属性:候选码的诸属性
外码

在此关系中不为码,但在其他关系中为码

属性向域的映象集合(DOM)

  • 属性与域的映射关系
  • 例如:"学号" \(\rightarrow\) INT

属性间的数据依赖关系集合(F)

函数依赖关系(FD)
定义

对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等, 而在Y上的属性值不等

表述:

  • X函数确定Y
  • Y函数依赖于X
  • 记作X→Y
分类

平凡函数依赖与非平凡函数依赖(X与Y)

  • 平凡函数依赖:X→Y,且Y\(\subseteq\)X
    • 例:(A, B)→A
  • 非平凡函数依赖:X→Y,且Y\(\nsubseteq\)X
    • 例:(A, B)→C

完全函数依赖与部分函数依赖(X与Y)

  • 完全函数依赖:X→Y,\(\forall X' \subset X\),\(X'\nrightarrow Y\)
    • 记为X\(\stackrel{F}{\longrightarrow}\)Y
  • 部分函数依赖:X→Y,\(\exists X' \subset X\),\(X'\rightarrow Y\)
    • 记为X$\stackrel{P}{\longrightarrow} $Y

传递函数依赖(X与Z)

  • 定义:X→Y,Y\(\nrightarrow\)X,Y→Z
  • 记为X$\stackrel{T}{\longrightarrow} $Z
多值依赖关系(MVD)
定义

X、Y和Z是U的子集,并且Z=U-X-Y,关系模式R(U)中多值依赖X→→Y成立,当且仅当对R(U)的任一关系r,给定的一对(x,z)值,有一组Y的值,这组值仅仅决定于x值而与z值无关

分类

平凡多值依赖

\(Z = \phi\)

非平凡的多值依赖

\(Z \neq \phi\)

嵌入型多值依赖

在R(U)上有X→→Y在W (W\(\subset\)U) 上成立

性质
  • 对称性:X→→Y,则:
    • X→→Z,则:
      • X→→Y\(\cup\)Z
      • X→→Y\(\cap\)Z
      • X→→Z-Y,X→→Y-Z
  • 传递性:X→→Y,Y→→Z, 则X→→Z-Y
  • X→Y,则X→→Y
连接依赖关系

关系

概述

  • 关系模式在某一时刻的状态或内容
  • 动态的、随时间不断变化的
  • 关系模式和关系往往统称为关系
  • 通过上下文加以区别

定义

  • 定义:对于一组域D1,D2,…,Dn,D1×D2×…×Dn的子集叫作在域D1,D2,…,Dn上的关系
  • 表示:二维表
    • 行为元组
    • 列对应于域
  • 特点:
    • 行列顺序无所谓

种类

基本关系(基本表或基表)

实际存在的表,是实际存储数据的逻辑表示

查询表

查询结果对应的表

视图表

由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据

目(度)

  • 定义:关系中的n值
  • 特殊关系:
    • 单元关系 / 一元关系:n=1
    • 二元关系:n=2

笛卡儿积

  • 定义:对于n个集合D1,D2,…,Dn,其笛卡儿积为第i个对象属于Di的所有可能的有序对
  • 记为:D1×D2×…×Dn

元组

  • 笛卡儿积结果中的一个有序对,即笛卡儿积元素
  • 别称:n元组

分量

笛卡儿积元素中的一个位置上的值

基数

  • 定义:集合中元素的个数
  • 特殊的,笛卡儿积结果的基数为各集合基数的乘积

规范化理论

  • 用途:规范化理论正是用来改造关系模式,通过分解关系模式来消除其中不合适的数据依赖,以解决插入异常、删除异常、更新异常和数据冗余问题。
  • 用法:一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式的集合,这种过程就叫规范化
  • 范式关系:1NF$\supset\(2NF\)\supset\(3NF\)\supset\(BCNF\)\supset\(4NF\)\supset$5NF

异常

数据冗余

  • 浪费大量的存储空间

更新异常

  • 数据有冗余,更新数据时,维护数据完整性代价大。

插入异常

  • 该插的数据插不进去

删除异常

  • 不该删除的数据不得不删

分类

1NF

  • 所有属性不可分

2NF

  • 满足1NF,且每一个非主属性都完全函数依赖于任何一个候选码

3NF

  • 满足2NF,且每一个非主属性都不传递函数依赖于任何一个候选码

BCNF

  • 满足1NF,且 \(\forall X\rightarrow Y, 主属性\subset X\)

4NF

  • 满足1NF,且 \(\forall X\rightarrow \rightarrow Y, 主属性\subset X\)

5NF

  • (未完待续....)

标签:关系,依赖,定义,04,函数,入门教程,01,集合,属性
来源: https://www.cnblogs.com/rsmx/p/12593285.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有