我怎样才能多态地构造一个数据库?
这可能是一个愚蠢的问题,但我没有什么经验。 我遇到了一个问题,我正在为一家小工厂使用Excel电子表格。
它有一个巨大的产品列表分为家庭。
比喻:卡罗拉,Avensis,Landcruiser =丰田
此外,这些产品还有与之相关的任务列表。
卡罗拉:第一步第二步第三步…
所有产品在前几个阶段即使在不同的家庭中也共享任务。 但有些产品在生产过程中的不同阶段可能是productX中的第6步是productY中的第5步。 但是productX和productY共享1-5。 (所有这一切都是真实的。
我有三个问题。 是否有可能多态地构造一个数据库? 常见的任务可以放在基类中,并获得更具体的(通用的OO)。
如果不是,你可以创build一个无序任务的中央数据库,并给予产品的每个数据库某种优先级,并且他们给这些任务一些命令。
最后的问题是有没有人遇到过这样的问题? 我有一种感觉,必须有一个devise模式。 感觉就像是一个解决scheme,就在我的掌握之外。
编辑1.电子表格暂时是空白的。 工作表是产品名称。 该string – 整数组合是产品编号。 价值将被放置在下面,即时间/小时,产品的数量应在指定的时间[
所以,这就是我所理解的:
- 您需要存储产品和任务/步骤之间的映射。 后者应该被存储以便被执行。
- 所有产品都有一些初始任务是常见的。
- 你想构build你的数据库“多态”。 既然你没有提到你正在使用什么样的数据库,我会认为它是一个关系数据库。
你可以创build你的表,所以:
-
Product
:每行存储一个产品的数据。 主键:product-name
(或product-id
,无论) -
Task
:Task
信息,如完成任务的时间等。主键:task-name/id
。 -
ProductTaskMapping
:包含要完成什么任务的映射。 其架构如下。 你也可以把前两列当作外键。-
product-name
– 指Product
表中的主键。 -
task-name
– 指Task
表中的主键。 -
priority
或sequence-number
-
-
CommonTask
:两列:-
task-name
-
priority
-
另外,没有办法定义两个表之间的“inheritance”。