是否可以根据WHERE
部分制定外键约束以禁止关系?
这可能听起来不是那么简单,所以我将尝试用一个例子来解释。
我们有2个'正常'表:
Person
Task
他们之间的N:M关系:
Team
一项任务,可以在下方拥有多项任务。所以我们制作一个'树'顺序。如果它是'团队',task
内也是布尔值:isTeam
;例如:
isTeam: true
)isTeam: false
)isTeam: false
)isTeam: false
)isTeam: false
)isTeam: true
)isTeam: false
)isTeam: false
)isTeam: false
)图片:人员在一个团队中(团队是一个具有(可能的)子任务的任务,并且isTeam = true)
Team
表格显示某个task
的负责人,其中包含子tasks
。
应该应用的限制:Person
只能在Task
s Task
时附加到isTeam=true
。
这可能吗?
PS(我在想,是否可以使用view
只选择Tasks
isTeam=true
来完成?)
答案 0 :(得分:0)
在此模型中, closure table 用于表示树。
JobType = 'P'
(需要人)JobType = 'T'
(需要团队)JobType = 'T'
JobType = 'P'