我已经开始为机器性能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 !! 谢谢, 德杰
答案 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) - 表示已分配特定计算机以执行给定班次上的特定任务的事实