适用于设备状态系统的数据库设计

时间:2013-01-22 17:49:30

标签: database database-design

设计数据库的更好方法是,您有一个包含一堆零件ID的表和另一个更改零件组状态的表:

Parts
id: int
type: int

Group
id: int
part_one_id: int
part_two_id: int
.
.
.

Reports
id: int
group_id: int
status_id: int
date: datetime

制作此数据库时,我有两种跟踪状态的方法。将status_id列添加到组表,每当我为该组创建报告时,我都会将该列更新为新状态。

OR

当我需要获取组的状态时,我会查询报告以查找最新报告。

1 个答案:

答案 0 :(得分:1)

不,这是一个坏主意。 PartStatus是一种可能性(Riehl启发式参数)。但状态可能是一个关联类。你现在在报告中有点近似,所以也许你只是重命名它。