我正在试图找出我应该使用哪种数据模型以及该数据模型应该如何。该模型需要存储在关系数据库(SQL)中。使用的语言:PHP。
我有几种项目:项目,任务和评论。在我的最终申请中,将有许多类型的项目。
每个项目(任何类型)都需要能够属于另一个项目(任何类型),并且每个项目(任何类型)都需要能够成为另一个项目(任何类型)的后续行动。所以我需要两种不同的关系:遗产和时间顺序;都是针对性的。无论什么样的关系项目都可能无法回归自己。非法:项目A - >项目B - >项目C - >项目A。
我希望能够提取以下类型的信息:
我不知道如何想象最后一个。
用户需要能够:
答案 0 :(得分:0)
我不明白通过关系概念设计这可能是一个什么问题。 您始终可以通过解析输出(来自查询)来获取您正在寻找的表单中的信息。 e.g。
使用架构:
project(pid,...),
milestone(pid,mid),
tasks(tid,mid,..),
reviews(rid,tid,..),
events(evid,rid), ...
从项目中,您可以获得导致审核的所有事件,甚至是与项目相关的所有事件(通过联接),然后通过它们进行解析,以您喜欢的任何信息格式进行排列和显示。 / p>
用户可以随时添加&删除项目。举个例子,我还不知道“改变关系或项目类型”意味着什么!
答案 1 :(得分:0)
Item(iid,itemstuff,typeid,iid)
type(typeid,description)
使用itemstuff,您可以添加可序列化的数据,或者您可能喜欢的常见数据。然后,如果你愿意,请专注:
Item1(iid,i1....)
item2(iid,i2....)
.
但是,改变意味着更新。
对于类似的问题,我不得不这样做一次,但是我没有回想起关于环回的问题。 我非常怀疑你能在rdbms中获得这样一个动态模型。