核心数据 - 关系到不同的实体

问题描述:

假设我有以下数据模型:核心数据 - 关系到不同的实体

Entity Person 
Attribute name String 
Attribute personType String 
Attribute dailyRecords 

Entity CarpenterDailyRecord 
Attribute numberOfNailsHammered Int 
Attribute picNameOfFinishedCabinet String 

Entity WindowWasherDailyRecord 
Attribute nameOfBuildingWashed String 
Attribute numberOfWindowsWashed Int 

我想建立Person.dailyRecords和日志实体的1之间的一对多的关系(这改变取决于人的类型)。当然,我可以创建一个CarpenterPerson和WindowWasher实体,每个实体指向它独特的日常记录结构,但是我必须以某种方式将我的应用组合在一起。

所以,如果我做一组实体:

实体组 属性人民阵列

我仍然停留。我如何指向多个&不同的Person实体?

必须有一个明显的答案,这只是我对所有这些新东西。谢谢!

创建一个处理关系的父(DailyRecord)实体(Person < - >> DailyRecord)。 [CarpenterDailyRecord | WindowWasherDailyRecord]继承自DailyRecord。

但是,这样做的风险在于所有的孩子(WindowWasherDailyRecord,CarpenterDailyRecord)都会在底层sqlite结构中的一个表中,因此可能会对性能产生影响。这不是避免继承的原因,只是在设计数据模型时需要注意的一些事情。

+0

谢谢你马库斯。在不同记录类型表示的数据中可能会有足够的重叠,核心数据不必创建太多的唯一列。我将不得不进行调查。我假设DailyRecord实体可能是抽象的?我会进一步阅读这个主题,但我认为我有这个主意。再次感谢! – carotene 2010-03-23 17:55:02

+0

是的,对不起,这不清楚,DailyRecord实体将是抽象的。顺便说一句,不要忘记接受你认为正确的答案。 – 2010-03-23 18:27:43