关系模型的相关术语[通俗易懂]

关系模型的相关术语[通俗易懂]关系模型的相关术语

大家好,又见面了,我是你们的朋友全栈君。

基本术语

  • 关系:整个二维表
  • 关系名:表格名称
  • 元组:行数据(记录)
  • 属性:列数据(字段/分量)
  • 属性名:列名称(字段名)
  • 主键:唯一确定元组的属性组(关键字)
  • 域:属性的取值范围
  • 关系模式:关系的描述,表示为:关系名(属性列表)

    • 例如:学生(学号,姓名,性别,年龄,系别
  • 关系的约束:域完整性约束,
  • 实体完整性约束,参照完整性约束

一、关系依赖

  • 函数依赖:X—>Y,即X函数决定Y,或Y函数依赖于X。

    • 例:学号—>姓名      #学号决定姓名
  • 平凡函数依赖:X—>Y,但X包含Y (Y包含于X)。

    • 例:(学号,课号)—>课号  #课号存在于 (学号,课号) 之中。
  • 非平凡函数依赖: X—>Y,但X不包含Y。

    • 例:(学号,课号)—>成绩  #成绩不存在于 (学号,课号) 之中。
  • 完全函数依赖:X—>Y,对于X的任意一个真子集X’都有X’不能函数决定Y。

    • 例:(学号,课号)—>成绩  #只有学号或姓名无法决定成绩,二者缺一不可。
  • 部分函数依赖:X—>Y,存在X的某一个真子集X’能够函数决定Y。

    • 例:(学号,课号)—>姓名  #只有学号就能决定姓名,课号为冗余项。
  • 传递函数依赖:X—>Y,X不包含Y,Y不函数决定X,Y—>Z,即Z对X传递函数依赖。

    • 例:学号—>系号,(系号不函数决定学号) ,系号—>系主任,则系主任传递函数依赖于学号。
  • 多值依赖:X—>—>Y,设R(U)是属性集U上的一个关系模式。X,Y,Z是U的子集,并且Z=U-X-Y,关系模式R(U)中多值依赖X—>—>Y成立,当且仅当对R(U)的任一关系r,给定的一对(x,z)值有一组Y的值,这组值仅仅决定于x值而与z值无关。

    • 例:关系模式R(仓库,管理员,物品)

      • 一个仓库有若干个管理员
      • 一个仓库可以存放多个物品
      • 一个管理员管理一个仓库中的所有物品
      • 一种物品只能放在一个仓库里
    • 则:仓库—>—>物品,仓库—>—>管理员
    • 表中,R = 仓库+管理员+物品,(仓库,管理员)确定一组物品,但是物品其实与管理员无关,仅由仓库确定,所以:仓库—>—>物品。又因为(R-仓库-物品)不是空集,所以 仓库—>—>物品为非平凡多值依赖。
    • 表中,R = 仓库+管理员+物品,(仓库,物品)确定一组管理员,但是管理员其实与物品无关,仅由仓库确定,所以:仓库—>—>管理员。又因为(R-仓库管理员)不是空集,所以 仓库—>—>管理员为非平凡多值依赖。
  • 平凡的多值依赖:若X—>—>Y, 并且X,Y,Z是U的子集,Z=U-X-Y,而Z为空集,则称X—>—>Y为平凡的多值依赖;
  • 非平凡的多值依赖:若X—>—>Y, 并且X,Y,Z是U的子集,Z=U-X-Y,若Z不为空,则称X—>—>Y为非平凡的多值依赖。
  • 连接依赖:为提高规范化程度,都是通过把低一级的关系模式分解为若干个高一级的关系模式来实现的,在此过程中,应该保证分解后产生的关系模式与原来的模式等价。常用的等价标准有两种:要求分解具有无损连接性和要求分解保持函数依赖。
  • 无损连接性的判别:将关系模式R<U,F>分解为关系模式R1<U1,F1>,R2<U2,F2>。如果(U1 ∩ U2 —>U1)∈F+(F的闭包,即F所蕴含的函数依赖的全体),或(U1 ∩ U2 —>U2)∈F+ ,即U1 ∩ U2 是R1的候选码或是R2的候选码,则这个分解一定是具有无损连接性的。

二、关系模式的规范化

  • 满足第一范式条件的关系模式(1NF):关系模式 R的每一个属性都是原子域,元组的每一个分量都是不可分割的数据项。
  • 满足第二范式条件的关系模式(2NF):关系模式 R∈1NF ,每一个非主属性完全函数依赖于码,消除非主属性对码的部分函数依赖。
  • 满足第三范式条件的关系模式(3NF):关系模式 R∈2NF ,每一个非主属性不传递依赖于码,消除非主属性对码的传递函数依赖(对非主属性的函数依赖)。
  • 满足Boyce-Code范式条件的关系模式(BCNF):关系模式 R∈3NF ,对于每一个非平凡函数依赖X—>Y,都有X包含码,消除主属性对于码的部分函数依赖与传递函数依赖。(在函数依赖的范畴内,BCNF达到了最高的规范化程度)
  • 满足第四范式条件的关系模式(4NF):关系模式 R∈BCNF ,对于每一个非平凡的多值依赖X—>—>Y(Y⊄X),都有X包含码。(限制关系模式的属性之间不允许有非平凡且非函数依赖的多值依赖)
  • 满足第五范式条件的关系模式(5NF):关系模式 R∈4NF,消除属于4NF的关系模式中存在的连接依赖。
  • 规范程度层次:5NF⊂4NF⊂BCNF⊂3NF⊂2NF⊂1NF

三、“好的”关系数据库系统应具有的特点

  • 适度减少数据冗余。
  • 关系明确,表与表之间主外键设置明确,表名称明确。

    • 对关系模式的属性间允许的数据依赖加以限制,减少表中非主属性间存在的函数依赖,避免更新异常问题。
    • 非主属性完全函数依赖于码,不允许有非主属性对码的部分函数依赖。
    • 非主属性不传递依赖于码。
  • 选择合理的数据库引擎,查询操作较多的与增删改操作较多的数据库分别使用不同的引擎。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106918.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • UDP协议解析

    UDP协议解析????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????????‍????UDP协议简介UDP是UserDatagramProtocol的简称,中文名是用户数据报协议,是OSI(OpenSystemInt

    2022年6月7日
  • Windows搭建Ldap服务器

    Windows搭建Ldap服务器Windows搭建Ldap服务器RerferenceSofewareLdapServer安装包openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.exeLdap客户端LdapAdmin.exe安装一路next到install即可。配置文件1slapd.conf2找到include./schema/c

    2022年5月14日
  • atm异步传输模式特性_ATM是什么模式

    atm异步传输模式特性_ATM是什么模式AsynchronousTransferMode.  ATM是一种传输模式,在这一模式中,信息被组织成信元,因包含来自某用户信息的各个信元不需要周期性出现,这种传输模式是异步的。   ATM是网络新技术,它采用基于信元的异步传输模式和虚电路结构,根本上解决了多媒体的实时性及带宽问题。实现面向虚链路的点到点传输,它通常提供155Mbps的带宽。它既汲取了话务通讯中电路交换的“有连接”服务

    2022年9月21日
  • 下载jdk文件后缀是.gz而不是.tar.gz怎么办 谷歌浏览器下载jdk

    下载jdk文件后缀是.gz而不是.tar.gz怎么办 谷歌浏览器下载jdk下载jdk文件后缀是.gz而不是.tar.gz怎么办 谷歌浏览器下载jdk

    2022年4月23日
  • for循环break,continue「建议收藏」

    for循环break,continue「建议收藏」for循环break,continue

    2022年4月20日
  • HTML解析之DOMContentLoaded和onload

    HTML解析之DOMContentLoaded和onload说在前面在很久很久以前,我在封装自己的JQuery库时就使用过DOMContentLoaded,觉得这个知识点看看别的文章就行了,不过现在我想把它记下来。JS代码与body标签的位置关系一个HTML初学时会遇到的问题,一个html页面中js代码应该放到哪里?<!–如果script标签在body前面–><head>…&lt…

    2022年11月1日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号