E-R图可以认为是关系模型的雏形,每个实体是一张表,实体与实体之间的关系可以合并到其中一个实体中,也可以是另外一张表,关系表和相关的实体表是通过主键或外键来联系的。
画E-R图首先要了解3个要素即:实体,属性,关系。
实体
用矩形表示,矩形框内写明实体名。
属性
用椭圆形表示,椭圆内写明属性名称,并用连线与实体连接起来。如果属性较多,为使图形更加简明,有时也将实体与其相应的属性另外单独用列表表示。
联系
用菱形表示,菱形框内写明联系名,并用连线分别与有关实体连接起来,同时在连线旁标上联系的类型。
E-R图设计步骤
(1)一个实体转换为一个关系模式,
实体的属性就是关系的属性,实体的码就是关系的码。
例如:将学生实体转换为关系模式
学生(学号,姓名,性别,出生日期)
Student(SID,Sname,Sex,Birthday,Specialty
(2)将联系转换为关系模式的方法
1:1联系
将联系与任意端实体所对应的关系模式合并,加入另一端实体的码和联系的属性。
例如:实体学校(学校编号,名称)与校长(编号,姓名)之间的任职联系是1:1的联系。
1:n联系
将联系与n端实体所对应的关系模式合并,加入1端实体的码和联系的属性。
例如:读者和读者类型实体的联系是1:n的。
Reader(RID,Rname, TypeID, Lendnum )
ReaderType(TypeID, Typename,LimitNum, LimitDays)
M:N联系
将M:N联系转换成一个关系模式。将该联系相连的各实体的码和联系本身的属性转换为关系的属性。
例如:教务管理中选课的E-R模型如图所示,学生和课程的联系是多对多的。
学生实体的码为SID,课程实体的码为CID,联系本身的属性为Grade。
注意:要将联系的属性(Grade)在图中画出,在下图中即“成绩”属性。
Student(SID,Sname,Sex,Birthday,Specialty)
Course(CID, Cname,Credit)
SC(SID, CID,Grade)
CSDN上有一篇对E-R图设计介绍得很专业的文章
http://blog.csdn.net/s_dan90/article/details/7171489
最后再附上一张学习E-R图的经典图: