假设,在这些任务下有一些任务和一些子任务,
例如:
任务1 子任务 1.1 子任务 1.2 子任务 1.3 子任务 1.4 任务 2 子任务 2.1 子任务 2.2 子任务 2.3
在这种情况下设计模式的最佳方法是什么?
第一种方式:
“任务”表 ==================================== task_id | 任务名称 | 描述 ==================================== “子任务”表 ================================================== ================================================== ====================== sub_task_id | task_id | sub_task_name | 说明 | 附件链接| 开始日期 | 到期日 | 地位 ================================================== ================================================== ======================
第二种方式:
================================================== ================================================== ================================== 身份证 | 姓名 | 说明 | parent_id | 附件链接| 开始日期 | 到期日 | 状态 | 类型(任务/子任务) ================================================== ================================================== ==================================
哪个更可取?
小智 12
这有点晚了,但以前的答案没有提供第三种既灵活又规范化的选择。
所有任务都应该保存在一个任务表中,因为子任务毕竟只是任务。
任务之间的关系应存储在第二个表中,该表具有根据与任务表的外键关系来标识父/子任务关系的列,这些列一起将形成复合主键。
任务
ID
标题
描述
开始日期
结束日期
任务关系
parent_task_id
sub_task_id
为了找到给定任务的父任务,您可以查询 sub_task_id 列。要查找给定任务的子任务,请搜索 parent_task_id 列。
这种结构具有额外的好处,即可以根据需要灵活地将尽可能多的父任务添加到任务中。
归档时间: |
|
查看次数: |
16255 次 |
最近记录: |