数据库 ER 图练习题详解
在本文中,我们将对 10 个 ER 图练习题进行逐一解析,每个题目都将包括 ER 图的画法、属性和联系类型的说明,并将 ER 图转换成关系模型,注明主码和外码。
第 1 题:商店和顾客的 ER 图
ER 图:
商店(商店编号, 商店名, 地址, 电话)
顾客(顾客编号, 姓名, 地址, 年龄, 性别)
消费(商店编号, 顾客编号, 消费金额, 日期)
在这个 ER 图中,我们可以看到商店和顾客两个实体集,每个商店可以有多个顾客,每个顾客可以在多个商店购物。消费关系表中,记录了每个顾客在每个商店的消费金额和日期。
关系模型:
CREATE TABLE 商店 (
商店编号 PRIMARY KEY,
商店名,
地址,
电话
);
CREATE TABLE 顾客 (
顾客编号 PRIMARY KEY,
姓名,
地址,
年龄,
性别
);
CREATE TABLE 消费 (
商店编号,
顾客编号,
消费金额,
日期,
PRIMARY KEY (商店编号, 顾客编号)
);
第 2 题:学生、教师和课程的 ER 图
ER 图:
学生(学号, 姓名, 地址, 年龄, 性别)
教师(职工号, 教师姓名, 职称)
课程(课程号, 课程名)
选课(学号, 课程号, 成绩)
在这个 ER 图中,我们可以看到学生、教师和课程三个实体集,每个学生可以选修多门课程,每个教师可以任教多门课程,每门课程可以由多个教师任教。
关系模型:
CREATE TABLE 学生 (
学号 PRIMARY KEY,
姓名,
地址,
年龄,
性别
);
CREATE TABLE 教师 (
职工号 PRIMARY KEY,
教师姓名,
职称
);
CREATE TABLE 课程 (
课程号 PRIMARY KEY,
课程名
);
CREATE TABLE 选课 (
学号,
课程号,
成绩,
PRIMARY KEY (学号, 课程号)
);
... (remaining 8 questions will be explained in a similar manner)