Fork me on GitHub

第六章关系数据理论

本章讨论关系数据理论

  6.1问题的提出

    前面已经介绍了关系数据库的基本概念,关系模型的三个部分以及关系数据库的标准语言SQL。但还有一个基本问题:如何构造一个适合它的数据库模式,这是数据库设计问题。

 

  一个关系模式应当是一个五元组。

      R(U,D,DOM,F)

      R:关系名,表名

      U:表示一组属性

      D:为属性组属性中的取值范围

      DOM:为属性到域的映射

      F:为属性组的数据依赖

      

由于D,DOM与模式设计关系不大,因此在本章中把关系模式看做一个三元组:  R< U,F>   当U属性组上的一个属性r满足F时,r称为关系模式R<U,F>的一个关系。

 

做为一个二维表,关系要符合一个最基本的条件:每一个分量必须是不可分的数据项。满足这个条件的模式就属于第一范式(1NF)。通俗的来讲1NF就是不可以有表中表(例如:总金额属性,不能再分为数量属性和单价属性),必须属性列是唯一的。

 

 

数据依赖:是一个关系内部属性与属性之间的一种约束关系。    举例:  当知道学生的Sno就可以推出来学生的姓名Sname来          Sno——>Snome

   1.函数依赖(FD):比如描述一个学生的关系,可以有学号(Sno),姓名(Sname),系名(Sdept)等等属性,由于一个学号只对应一个学生,一个学生只在一个系学习。因而当学号值确定之后,学生的姓名以及所在系的值也就被唯一地确定了。属性间的这种依赖关系类似于数学中的函数y=f(x),自变量X确定之后,相应的函数值y也就唯一确定了。

      例如:Sname  =f(Sno) 即Sno函数决定Sname,或者说Sname函数依赖于Sno     记作:   Sno——>Sname

 

 

总结:

    1.R< U,F>   当U属性组上的一个属性r满足F时,r称为关系模式R<U,F>的一个关系。

    2. 1NF不可以有表中表,必须属性列是唯一的。

    3.数据依赖是y=f(x),已知一个属性值推出另外一个值。

posted @   云源  阅读(376)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· DeepSeek本地性能调优
· 一文掌握DeepSeek本地部署+Page Assist浏览器插件+C#接口调用+局域网访问!全攻略
湖南云源网络科技有限公司 www. ysource.cn 版权所有   ICP证:湘ICP备18004366号
  邮箱:2536201485@qq.com   CSDN博客地址:https://blog.csdn.net/qq_32885621 有事您Q我
点击右上角即可分享
微信分享提示