(10分)假定我们要为某社交平台建立一个数据库,存储如下信息:·每个用户有用户编号、姓名、手机号;·每个群有群编号,群名称;·每个帖子有帖子-考呗网题库移动版
数据库
首页 题库首页在线模考
取消

参考答案暂无
解析:(1)【解题思路】
ER图的设计原则:在设计ER图时,首先应根据需求分析,确认实体、属性和联系这3种ER图的基本要素。在ER图中,分别用矩形框表示实体,椭圆表示属性,菱形框表示联系。
①实体:把客观存在并且可以相互区别的事物称为实体。实体可以是实际事物,也可以是抽象事物,如群、用户、帖子等。
②属性:描述实体的特性称为属性,如用户的用户编号、姓名、手机号等。能唯一标识实体的属性作为主属性,在ER图中用下划线标识。
③联系:联系是实体问有意义的相互作用,即实体问存在的关联。一般用动词作为联系的名字,如起降、驾驶、飞行等,能表示实体之间的关系。
本题中每个群有唯一的用户作为群主,一个用户可以担任多个群的群主,所以作为群主的用户和群之间存在一对多联系;每个群有多个用户,每个用户可以加入多个群,所以用户和群之间是多对多联系;每个帖子只属于一个群,每个群可有多个帖子,所以帖子和群之间存在一对多联系;每个帖子有唯一的发布者,每个用户可以发布多个帖子,所以帖子和用户之间存在一对多联系。
【参考答案】

(2)【解题思路】
在将ER图向关系模式转换时规则如下:
①1:1(一对一)联系。
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的码构成;关系模式的码由两个实体中的任意一个码构成。
方法二:联系与一端的实体的关系模式合并,将另一实体的码和联系的属性加入到实体的关系模式内,码不变。
②1:m(一对多)联系。
方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的码构成;模式的码由m端实体的主码组成。
方法二:与m端的实体的关系模式合并,即将一端关系的码和联系的属性加入到m端的实体的关系模式内,码不变。
③m:n(多对多)联系。
只有一个方法:联系转换成独立的关系模式,模式的属性由联系本身的属性及两个实体的码构成,关系模式的码由两端实体的主码组合而成。
关系模式满足3NF,则必须满足关系模式中每一个非主属性既不部分依赖于码也不传递依赖于码。简而言之,第三范式就是消除主属性对码的部分和传递函数依赖。
【参考答案】
由于题目要求满足3NF范式,ER图向关系模式转换采用方法一,转换后的关系模式名称采用实体名或联系名。本题中有三个一对多、一个多对多联系。对于每一个一对多联系,都与多端的实体的关系模式合并,即将一端关系的码和联系的属性加入到多端的实体的关系模式内,码不变。对于多对多联系来说,只能单独转换成一个新的关系模式,转换后的关系模式的属性由联系本身的属性及两个实体的主码构成,转换后的关系模式的主码由两端实体的主码组合而成。
转换后的关系模式:
用户(用户编号,姓名,手机号)。其中,用户编号是主码;
帖子(帖子编号,发帖时间,正文,发帖用户编号,所属群编号)。
其中,帖子编号是主码,发帖用户编号、所属群编号是外码;
群(群编号,群名称,群主编号)。其中,群编号是主码,群主编号是外码;
用户所属群(用户编号群编号)。其中,用户编号、群编号共同作为主码,用户编号、群编号同样也是外码。

你可能喜欢

延伸阅读