如何将实体关系图转换成关系模式

时间:2021-12-19作者:klpeng分类:IT综合浏览:929评论:0

        一个实体转换成一个关系模式。

        首先,通过visio绘制一个与学生实体有联系的几个E-R图。如下图所示

如何将实体关系图转换成关系模式

         其中矩形表示的是实体(班级,学生,课程,学习账号),椭圆表示的是属性,菱形表示的是联系(拥有,持有,学习)。

       上图实体与实体之间的关系分别为:

        1、班级与学生实体为1:n (一对多), 一个班级可以拥有多个学生,学生只能在一个班级中。

        2、学生实体与课程实体的关系为:m:n(多对多) ,一个学生可以学习多门课程,一门课程可能被多名学生选择。

        3、学生与学生账号实体的关系为1:1(一对一),一个学生只能持有一个学生账号,一个学生账号只能被一个学生使用。

        根据实体与实体之间的关系的不同来转换成不同的关系模式:

        1.实体间的关系为 1:1(一对一): 当实体间的关系是1:1时,将任意一个实体的主键放在另一个实体作为外键存在。

        例如:如上图所示的学生与学生账号实体的关系模式就可以转换成:

(学生和学长账号实体是1:1关系)

学生(学号,姓名,性别,账号编号);

学生账号(账号编号,账号用户名,账号密码);

或者

学生(学号,姓名,性别);

学生账号(账号编号,账号用户名,账号密码,学号);

        

        2.实体间的关系为1:n(1对多):当实体间的关系是1:n时,关系对应为1的实体主键在关系对应为n的实体作为外键存在。即为n的实体有一个外键是1的主键。

          例如:如上图所示的学生与班级实体的关系模式就可以转换成:

(班级和学生实体是1:n关系)

班级(班级编号,班级名称);

学生(学号,姓名,性别,班级编号);

               

        3.实体间的关系为m:n(多对多):当实体间的关系是m:n时,这个时候需要新建一个关系模型,该关系模式的主键是由两个实体的主键一起组成,在加上产生联系的属性。

          例如:如上图所示的学生与课程实体的关系模式就可以转换成:

(学生与课程实体是m:n关系)

学生(学号,姓名,性别,班级编号);

课程(课程编号,课程名称,学分);

学习课程信息(学号课程编号,成绩);

               

        将实体关系图转换成关系模式就可以在数据库中建表啦

打赏
文章版权声明:除非注明,否则均为彭超的博客原创文章,转载或复制请以超链接形式并注明出处。
相关推荐

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

猜你喜欢