我正在为当地酿酒厂开发一个生产控制应用程序,我遇到了构建数据库的问题。
核心功能是用户创建精神类型的能力,这些类型都具有相关的生产过程。每个过程可以有多个步骤。有7种不同类型的步骤。
当用户创建某种精神的“批处理”时,将选择精神类型,并且在定义的生产过程之后将向用户呈现“向导”。在每个步骤中,用户将输入与该步骤相关的信息。
我想出的是这种多对多的关系:
spirits (spirit types)
- id
- name
steps (steps in the production process)
- spirit_id
- state_id
states (names of all possible steps)
- id
- name
虽然这有助于创建精神类型,但在填写数据方面却缺乏。由于生产过程步骤中的每个步骤都采用不同的数据:
distillation
- abv
- mass
dilution
- abv
- water
filtration
- density
- volume
这种应用的最佳结构是什么?
答案 0 :(得分:1)
对我来说,你应该使用一些表来管理进程和stess之间的主/细节关系..这与类似的步骤类别相关
activity (class of steps in the production process)
- activity_id
- name
process_phase (master table for process steps)
- process_phase_id
- description
- activity_id
- spirit_id
process_phase_detail (detail table for process step )
- process_phase_id
- detail_id
- state_id
PS - 数据建模(没有严格的规范)是一个基于意见的领域..