在某数据库中,相关表的建表语句如下: CREATE TABLE T1( a1 int PRIMARY KEY, a2 int. a3 int FOREIGN KEY REFERENCES T2(a3)); CREAT

admin2019-01-08  20

问题 在某数据库中,相关表的建表语句如下:
    CREATE TABLE T1(
    a1 int PRIMARY KEY,
    a2 int.
    a3 int FOREIGN KEY REFERENCES T2(a3));
    CREATE TABLE T2(,
    a3 int PRIMARY KEY,
    a4 int,
    a5 int FOREIGN KEY REFERENCES T2(a3)):
    CREATE TABLE T3(
    a1 int,
    a3 int,
    a6 int,
    PRIMARY KEY(a1,a3),
    a1 FOREIGN KEY REFERENCES T1(a1),
    a3 FOREIGN KEY REFERENCES T2(a3));
    请画出相应的ER图,使得可以从该ER图推导出上述表定义,其中实体和联系的名称可以自定,实体的主码属性请使用下划线标明。

选项

答案[*]

解析 ER图向关系模式转换涉及到两方面:实体的转换和实体间联系的转换。
    ①实体的转换:在从ER图转换为关系模式时,一个实体就转换成一个关系模式,实体的属性就是关系模式的属性,实体的键就是关系的主键。
    ②实体间联系的转换:实体间存在三种联系,即1:1(一对一)联系,1:m(一对多)联系,m:n(多对多)联系。
    1:1(一对一)联系
    方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由两个实体中的任意一个键构成。
    方法二:联系与一端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
    1:m(一对多)联系
    方法一:联系转换为独立的关系模式;模式的属性由联系本身的属性及两个实体的键构成;主键由m端实体的键组成。
    方法二:与m端的实体的关系模式合并,即将联系的属性加入到实体的关系模式内,主键不变。
    m:n(多对多)联系
    多对多联系转换成新的独立的模式时,模式的属性由联系本身的属性及两个实体的键构成,主键由两端实体的键组合而成。
    该题是是从关系模式来推断ER图,因此解题的思路是对ER向关系模式转换做反向转换。
    根据规则C可以推断T3是个多对多关系,a1和a3是实体的主码,a6是联系的属性。
    根据规则B可以推断出T1,T2是l:m关系。因为a3和a5是外码。且a3和a5的值相同。a2、a4是联系T1、T2的属性,a2也可以是实体1的属性。
转载请注明原文地址:https://kaotiyun.com/show/QPlZ777K
0

最新回复(0)