根据类型属性为可以具有不同字段的对象建模

时间:2018-04-12 11:18:00

标签: android database sqlite database-schema

我有一个对象,它可以根据对象的type属性具有不同的字段

class Expense {
   String id;
   String type; // "MILEAGE" or "PERDIEM"
   String commonAttribute1;
   // there are too many common attribute
   Mileage mileage;
   PerDiem perDiem;
}

Mileage和PerDiem具有不同的属性,根据类型,其中一个将为null,另一个将填充。

建立这种关系的最佳方法是什么?

我想到了两种方法:

1-为里程和每日津贴创建不同的表格,并通过具有一对一关系的外键将它们链接到费用表。

2-在同一个表上添加两个,并根据我可以从表中获取我想要的任何属性的类型,但是许多列将不被使用。

0 个答案:

没有答案