ICode9

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

数据库设计

2021-01-16 14:30:04  阅读:243  来源: 互联网

标签:关系 依赖 数据库 实体 XF 设计 属性 rightarrow


E-R图

E-R图绘制步骤

  1. 收集信息
  2. 标识对象:标识数据库要管理的实体。
  3. 标识每个实体的属性。
  4. 标识对象之间的关系。
  5. 标识实体集之间的映射基数(一对一、一对多、多对多)。

E-R图符号

  1. 实体(n.):长方形
  2. 属性(n.):椭圆形
  3. 关系(v.):菱形

关系模式

E-R图向关系模式转化的规则

  1. 每个实体类型即为一个关系模式,实体的属性即为关系的属性,实体的码即为关系的码。

  2. 映射基数:

    • 1 : 1 :将两个实体转换成的两个关系模式中的任意一个关系的属性中,加入另一个关系的码作为外码,以及联系关系的属性。
    • 1 : n :在n端实体转换成的关系模式中,加入1端实体的码作为外码,以及联系关系的属性。
    • m : n :将该联系关系转换成一个独立的关系模式:两端实体的码和联系关系的属性即为关系的属性,两端实体码的组合即为关系的码。
  3. 主码写在最前面,外码写在最后(但在联系关系的属性之前),主码用下划线标识。

关系模式的规范化理论

  • 第一范式(1NF):
    在同一关系表中,每个属性都不可再分。
  • 第二范式(2NF):
    表中的每个非主属性都完全依赖于主属性。
    (第二范式要求每个表只描述一件事情)
  • 第三范式(3NF):
    表中的非主属性之间不存在依赖关系。

关系模式的表示

  1. 关系模式的完整表示:R< U , D , Dom , F >
    R:关系名
    U:关系的属性集合
    D:属性集U中属性的数据域
    Dom:属性到域的映射
    F:属性集U的数据依赖集
  2. 关系模式的三元组表示:R< U , F >

函数依赖

  • 函数依赖:属性集 X 决定另一个属性集 Y 时,称属性集 Y 依赖于该属性集 X 。记作 X → \rightarrow →Y。
  • 完全函数依赖:若对于属性集 X 的每一个真子集 X’ ,都有X → \rightarrow →’Y,则成 Y 对 X 完全函数依赖。
  • 部分函数依赖:若对于属性集 X 的真子集 X’ ,存在X’ → \rightarrow →Y,则成 Y 对 X 部分函数依赖。
  • 传递函数依赖:若属性集X → \rightarrow →Y,Y ↛ \nrightarrow ↛X,Y → \rightarrow →Z,则 Z 对 X 传递函数依赖。
  • 逻辑蕴含:设 F 是模式R< U >的函数依赖集,X 和 Y 是属性集 U 的子集,若能从 F 中推出X → \rightarrow →Y,则称 F 逻辑蕴含X → \rightarrow →Y。

闭包

  • 在关系模式 R< U , F >中,为 F 所逻辑蕴含的函数依赖的全体叫做 F 的闭包,记作 F+
  • 设有关系模式 R< U , F >,X 是 U 的子集,称所有从 F 推出的函数依赖集 X → \rightarrow →Ai 中 Ai 的属性集为 X 的属性闭包,记作 XF+
    即: XF+={ Ai | Ai∈U , X → \rightarrow →Ai ∈F+}

闭包的求法

  1. 选 X 作为闭包 XF+ 的初值 XF(0)
  2. XF(i+1) = XF(i) + 集合 A 。(集合 A 为 F 中发函数依赖Y → \rightarrow →Z,A ⊆ Z,Y ⊆ XF(i) )
  3. 重复步骤2,直到 XF(i) = XF(i+1),则 XF(i) 即为所求 XF+

标签:关系,依赖,数据库,实体,XF,设计,属性,rightarrow
来源: https://blog.csdn.net/ankoki/article/details/112705832

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

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

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

ICode9版权所有