回 帖 发 新 帖 刷新版面

主题:[讨论]数据库设计考题的迷惑!

如果有如下关系:
职工号,项目决定时间,地点。
每一个职工在一个实施地点只能参加一个项目。
我设计的关系如下:
R1(职工号,项目,时间,地点)其中职工号,和项目为主键。
R2(职工号,项目,地点)其中职工号,地点是主键。
请问这样有问题吗?
这样是第三范式吗,R1中有传递关系或者局部依赖关系吗?
要如要把R1分解为:
(职工号,项目,时间)(职工号,项目,地点)其中职工号,和项目为主键???

回复列表 (共2个回复)

沙发

在实际中我想是没有问题的。
但是在考试中,唯一的疑问就是:
职工号,地点可以→项目也就是 职工号,地点可以→时间.
但是职工号,地点不算一个码吧.更何况这样也不是直接推出的,也还是靠职工号,项目决定的.所以个人认为R1,R2这样就已经可以了,不用在分解.

板凳


感觉应该这样设计:

R1 (项目, 时间, 地点),  --描述了项目这个实体对象, KEY为(项目)

R2 (职工号, 项目),      --描述了员工参与了什么项目, KEY为(职工号, 项目)

我来回复

您尚未登录,请登录后再回复。点此登录或注册