实体关系

时间:2009-02-23 11:52:22

标签: database

我已经开始为机器性能mgt系统开发数据库 事实:
1.机器(platNo,型号,名称)可以在几个甘蔗田上工作(fieldNo,fieldNo)    - 机器与野战 2.许多机器可以在甘蔗场上工作 3.一台机器可以为许多userDept做任务(deptId,deptName) 4.一个userDept需要几台机器进行活动{可以在几个甘蔗田上完成任务;耕地,土地整形等可以在1号,2号,3号......任务对战场上进行, 许多任务可以在一个领域完成;在田地1,耕作,耙,......可以做到 - 任务与现场?/?} 5.A机器可以为很多用户部门做; lpcd(使用其机器)可以进行种植,修复和扩建项目的相同类型的工作(例如:耕作)。    - task vs userDept 6.可以为userDept完成许多类型的任务;犁,耙,...可以为种植园 - 任务与用户完成 7.机器三班制(1到3)

问题:请帮我设计ER !! 谢谢, 德杰

1 个答案:

答案 0 :(得分:1)

我假设platNo可以用作机器的唯一标识符。根据你不明确的规则,有很多种可能性 - 例如可能不需要或可能需要修改以下某些关系:

MACHINE(平台,型号,名称) - 代表每台机器

FIELD(fieldNo) - 表示每个甘蔗田

TASK(taskId,taskName) - 表示可以由任何机器完成的各种任务(例如犁地,耙地)

USERDEPT(deptId,deptName) - 代表每个部门

PROJECT(projId,projName,deptId) - 代表每个部门的每个项目(例如种植,修复,扩建)

SHIFT(shiftNo) - 表示可以将任何计算机分配给

的班次

MACHINE_FIELD(platNo,fieldNo) - 表示特定机器可以在特定甘蔗田上工作的事实

MACHINE_TASK(platNo,taskId) - 表示特定机器可以执行特定任务的事实

PROJECT_REQUIREMENT(projId,taskId) - 表示特定项目(针对特定部门)需要特定任务的事实

MACHINE_ASSIGNMENT(projId,taskId,shiftNo,platNo) - 表示已分配特定计算机以执行给定班次上的特定任务的事实