建立一个关于系、学生、班级、学会等诸信息的关系数据库。 学生:学号、姓名、出生年月、系名、班号、宿舍区。 班级:班号、专业名、系名、人数、入校年份。 系:系名、系号、系办公地点、人数。 学会:学会名、成立年份、办公地点、人数。 语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同 一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会有一个入会年份。 请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部 是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。指出各关系模式的候选码、外部码, 有没有全码存在?
时间: 2023-06-27 08:06:19 浏览: 361
数据库学生信息管理
关系模式:
学生(学号,姓名,出生年月,系名,班号,宿舍区)
班级(班号,专业名,系名,人数,入校年份)
系(系名,系号,系办公地点,人数)
学会(学会名,成立年份,办公地点,人数)
极小函数依赖集:
学生:
学号→姓名,出生年月,系名,班号,宿舍区
系名→系号,系办公地点,人数
班级:
班号→专业名,系名,人数,入校年份
系名→系号,系办公地点,人数
系:
系名→系号,系办公地点,人数
学会:
学会名→成立年份,办公地点,人数
不存在传递函数依赖。
候选码和外部码:
学生:候选码为学号,外部码为班号和系名
班级:候选码为班号,外部码为系名
系:候选码为系名,外部码为系号
学会:候选码为学会名,外部码为无
全码不存在。
对于学生关系模式中的函数依赖左部是多属性的情况,学号是候选码,因此学号→姓名,出生年月,系名,班号,宿舍区是完全函数依赖,而系名→系号,系办公地点,人数是部分函数依赖,因为系名不能唯一确定系号、系办公地点和人数。
阅读全文