数据库E-R模式图的设计与实现

本文通过两个实际案例,详细解析了E-R图的设计过程。第一个案例为医院信息系统中的科室、医生与病人之间的关系;第二个案例为高校教育系统中的系、教师、学生、课程与项目之间的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

E-R图是我们设计数据库是比较常用的,也是比较重要的,现在以下面几个例子来了解一下E-R图的设计与实现


例1 设有某医院有以下事实:每个科室聘用多位医生可接诊病人;每位医生属于属于一个科室;病人根据自己的症状选择相应的科室就诊;一位病人在同一科室中多次看病时,每次可能由不同的医生为其诊断。设科室的属性包括科室代码、科室名称,医生的属性包括工号、姓名、职称,病人的属性包括姓名、年龄、工作单位,设计其E-R图。

分析:“科室”与“医生”间的“聘用”关系为一对多的联系,可有聘用日期、聘用期限等属性;“医生”与“病人”间的“主治”关系为多对多的联系,可有就诊日期等属性;“科室”与“病人”间的“就诊”关系为多对多联系,但该关系可通过“科室”与“医生”间的“聘用”关系以及“医生”与“病人”间的“主治”关系来反映,可不必画出来。

E-R图结果:

 

例2 设某高校有若干个系,每个系有若干老师和学生,每位老师可担任多门课程,并可参与多个科研项目,每门课程可由多位老师担任,每个科研项目也可由多位教师共同参与,每位学生可选修本系或外系的多门课程。试设计E-R图,给出每个实体、联系的属性,并将该E-R图转化为关系模型。

分析:由题意可知ER图中应包括5个实体:系、教师、学生、项目和课程,各实体的属性设计如下:系(系号,系名,系主任)、教师(工号,姓名,职称)、学生(学号,姓名,年龄,性别)、项目(项目号,项目名称,负责人)、课程(课程号,课程名,学分)。个实体之间的联系包括:教师担任课程的“任课”联系;教师参加项目的“参加”联系;学生选修课程的“选修”联系;教师与系之间的“聘用”联系、学生与系之间的“隶属”联系。其中“参加”联系可有项目排名属性。“选修”联系应有成绩属性。画出ER图后,可根据ER图向关系模型转化。

E-R图结果:


 

 

关系模式:由ER图转换而得的关系模型如下:系(系号,系名,系主任)、教师(工号,姓名,职称)、学生(学号,姓名,年龄,性别)、项目(项目号,项目名称,负责人)、课程(课程号,课程名,学分),任课(课程号工号)、参加(工号项目号,排名)、选修(学号课程号,成绩)、聘用(工号、系号)、隶属(学号,系号),其中带下划线的为各关系模式中的主关键字。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值