博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库系统原理——ER图转换成关系模式集的算法
阅读量:5099 次
发布时间:2019-06-13

本文共 688 字,大约阅读时间需要 2 分钟。

ER图到关系模式集的转换

以二元联系类型的转换为例

  1. (实体类型的转换):将每个实体类型转换成一个关系模式,实体的属性即为关系模式的属性,实体标识符即为关系模式的键。
  2. (联系类型的转换):
    1. 若实体间联系是1:1,可以在两个实体类型转换成的两个关系模式中任意一个关系模式的属性中加入另一个关系模式的键(作为外键)和联系类型的属性。
    2. 若实体间联系是1:N,则在N端实体类型转换成的关系模式中加入1端实体类型的键(作为外键)和联系类型的属性。
    3. 若实体间联系是M:N,则将联系类型也转换成关系模式,其属性为两端实体类型的键(作为外键)加上联系类型的属性,而键为两端实体键的组合。

实例:教学管理的ER图转换成关系模式集

教学管理的ER

 

第一步:把三个实体类型转换成三个模式:

系(系编号,系名,电话)

教师(教工号,姓名,性别,职称)

课程(课程号,课程名,学分)

第二步:

  1. 对于1:1联系“主管”,可以再“系”模式中加入教工号(教工号为外键,用波浪线表示);
  2. 对于1:N联系“聘用”,可以再“教师”模式中加入系编号和聘期两个属性(系编号为外键);
  3. 对于1:N联系“开设”,可以再“课程”模式中加入系编号(系编号为外键)

这样得到的三个模式成如下形式:

第三步:对于M:N联系“任教”,则生成一个新的关系模式:

        

第四步:整合后关系模式如下:

        

 

 该随笔转载此http://blog.csdn.net/haovip123/article/details/21708041的作者,很简洁明了!!!

 

转载于:https://www.cnblogs.com/lpd1/p/7833232.html

你可能感兴趣的文章
无向图求桥 UVA 796
查看>>
Nginx+Keepalived 实现双击热备及负载均衡
查看>>
五分钟搭建WordPress博客(二)
查看>>
Vue_(组件通讯)子组件向父组件传值
查看>>
jvm参数
查看>>
Something-Summary
查看>>
Spring学习笔记
查看>>
6个有用的MySQL语句
查看>>
linux c/c++ IP字符串转换成可比较大小的数字
查看>>
我对前端MVC的理解
查看>>
sql: table,view,function, procedure created MS_Description in sql server
查看>>
[网络流24题] 最长k可重区间集问题 (费用流)
查看>>
路径依赖理论
查看>>
ActiveX多线程回调JavaScript
查看>>
剑指offer系列32-----对称二叉树的判断
查看>>
Silverlight实用窍门系列:19.Silverlight调用webservice上传多个文件【附带源码实例】...
查看>>
2016.3.31考试心得
查看>>
Weka SMO
查看>>
codeforces305A
查看>>
java服务器热部署的原理
查看>>