【发布时间】:2011-05-31 21:42:52
【问题描述】:
1.) 我有一个数据库,其中每个条目代表一个任务。
而在几十甚至上百个任务中,会有一个特殊的任务(这是一个里程碑)
因此,在这种情况下,我只有很少的条目需要一个额外的字段来将它们与大多数条目分开。
我不想创建第二个表,因为这是使这些里程碑特别的唯一字段,它们与常规任务条目共享许多其他字段。
我是否应该创建另一个字段来保存一些 TRUE,而其余的默认为 FALSE
2.) 对于这些任务中的每一个,它都有可变数量的执行者(取决于用户输入) (更进一步,每个执行者都有自己的多个子执行者。)所以我本质上是使用数据库来描述树结构。我现在拥有的方式是,如果有,我将拥有相同任务信息的 5 个副本是5个表演者,占据5个条目。如果我的数据库中的条目(包括副本)不超过 10,000 个,这是要走的路吗
谢谢
这应该澄清一下
-
Task1(这是一个里程碑任务)
- 表演者1
- 次执行者 ID=21
- 次执行者 ID=542
- 表演者2
- 表演者1
-
Task2(这不是里程碑任务)
- 表演者2
- 次执行者 ID=231
- 表演者2
次执行者和执行者是完全不同的群体。完全没有重叠。子执行者是向执行者提供输入的组,因此执行者可以完成分配给他们的任务。
【问题讨论】:
-
我不喜欢什么是执行者——他们是任务的分配者还是“子任务”?
-
执行者是子任务吗?一个人 ?什么是子人?
-
执行者任务是 n-1 关系还是 n-m 关系?表演者对次表演者是 1-n 还是 n-m?表演者可以是次表演者吗?表演者可以成为自己的次要表演者吗?
标签: php mysql database database-design hierarchy