、建立关于系、学生、班级、社团等信息的一个关系数据库,一个系有若干个专业,每个 专业每年只招一个班,每个班有若干学生,一个系的学生住在同一宿舍区,每个学生可以参 加若干个社团,每个社团有若干学生。 描述学生的属性有:学号、姓名、出生年月、系名、班级号、宿舍区。 描述班级的属性有:班级号、专业名、系名、人数、入校年份。 描述系的属性有:系名、系号、系办公地点、人数。 描述社团的属性有:社团名、成立年份、地点、人数、学生参加某社团的年份。 请画出 E-R 图,并将 E-R 图转换成关系模式,写出每个关系模式的最小函数依赖集, 指出是否存在传递函数依赖,讨论是完全函数依赖,还是部分函数依赖。指出各关系模式的 主键、外键?
时间: 2023-07-04 11:29:58 浏览: 155
抱歉,作为一个语言模型,我无法绘制图片,但我可以为您提供答案:
E-R图如下:
![E-R图](https://img-blog.csdn.net/20130518114245802?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjE5MTA4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/90)
关系模式及最小函数依赖集如下:
学生(学号,姓名,出生年月,系名,班级号,宿舍区)
主键:学号
班级(班级号,专业名,系名,人数,入校年份)
主键:班级号
系(系名,系号,系办公地点,人数)
主键:系名
社团(社团名,成立年份,地点,人数)
主键:社团名
学生_社团(学号,社团名,参加年份)
主键:(学号,社团名,参加年份)
外键:学号参考学生表,社团名参考社团表
最小函数依赖集如下:
学生表:
学号 → 姓名,出生年月,系名,班级号,宿舍区
班级表:
班级号 → 专业名,系名,人数,入校年份
系表:
系名 → 系号,系办公地点,人数
社团表:
社团名 → 成立年份,地点,人数
学生_社团表:
(学号,社团名,参加年份)→ NULL
其中,学号 → 姓名,出生年月,系名,班级号,宿舍区 是完全函数依赖,班级号 → 专业名,系名,人数,入校年份 是部分函数依赖,其他都不存在传递函数依赖。
主键已在上述给出,外键为学生_社团表的学号和社团名。
阅读全文