zoukankan      html  css  js  c++  java
  • 函数依赖关系

    函数依赖


      之前学函数依赖的时候感觉很容易就理解了,但是过了一两天再回想的时候就什么都忘的一干二净,思来想去还是没有真正的理解,所以今天只能在网上查一些资料看看,再深入理解并记录一下


    定义:

      既然是数据库,那么函数依赖自然是存在于数据库表中的关系,或者说是数据库表中的字段的关系,函数依赖是指关系中属性间(或者说是表中字段间)的对应关系。
    官方定义:设一个关系为R(U),X和Y为属性集U上的子集,若对于X上的每个值都有Y上的一个唯一值与之对应,则称X和Y具有函数依赖关系,并称X 函数决定Y,或称Y函数依赖于X,记作X→Y,称X为决定因素。
    理解:在一个表中,将所有字段分为两部分X和Y,如果X中的一条数据可以唯一确定Y中的一条数据,则称X和Y具有函数依赖关系,并称为X函数决定Y,或Y函数依赖于X,记为:X一>Y,X 为决定因素

    函数依赖的分类:

    • 完全函数依赖
      • 设有关系模式R(U),U是属性集,X和Y是U的子集,如果X→Y是一个函数依赖,且对X的任何一个真子集X'都不存在X'→Y,则称X→Y是一个完全函数依赖(Full Functional Dependency),即Y完全函数依赖于X
      • 在一张表中字段分为 X 和 Y 两个集合,X集合数据唯一确定一条数据 Y ,X集合字段中的任何一个字段都不能确定唯一一条数据 Y ,就称 Y 完全函数依赖于 X
    • 部分函数依赖
      • 设有关系模式R(U),U是属性集,X和Y是U的子集,如果X→Y是一个函数依赖,且对X的任何一个真子集X'都存在X'→Y,则称X→Y是一个部分函数依赖(Full Functional Dependency),即Y部分函数依赖于X
      • 在一张表中分为 X 和 Y 集合,X集合数据唯一确定一条数据Y,并且X中任意字段或组合字段都可以唯一确定Y集合数据,则称 Y 部分函数依赖于 X
    • 传递函数依赖
      • 在关系模式R(U)中,设X,Y,Z是U的不同的属性子集,如果X确定Y、Y确定Z,且有X不包含Y,Y不确定X,(X∪Y)∩Z=空集合,则称Z传递函数依赖(transitive functional dependency) 于X。
      • 在一张表中,字段分为 X、Y、Z,如果X可以决定Y,Y决定Z,但是Y不能决定X,则称Z传递函数依赖于X
  • 相关阅读:
    2014/4/9-最近所想
    DNS坑爹呢?!
    c#委托使用
    sqlserver 获取一个月有多少天
    定时提醒模型
    sqlserver导入dbf文件
    json对象中根据主键判断是否有重复数据
    差异备份与恢复
    html编码和解码
    opendatasource问题
  • 原文地址:https://www.cnblogs.com/SunArmy/p/11340821.html
Copyright © 2011-2022 走看看