android- Room数据库中同一类的多个表彼此之间没有关系

时间:2018-10-27 01:29:14

标签: android database sqlite database-design android-room

我正在使用Room作为该应用程序的数据库。我有一种情况,其中某种类型的对象需要存储在单独的表中。例如,以名为Item.java

的对象为例

现在,我想拥有三个SQL表:

Item1

Item2

Item3

请忽略SQL DB的任何命名约定-这只是一个示例

问题:

我在Item.java类中具有一个@Entity(tableName =“ Item1”)实体,并具有将使用表名的DAO类。

我有3个片段,每个片段彼此独立。我只想要三个与Item具有相同属性和功能的数据库。我想创建另一个具有相同Item.java类的表Item2,以在第二个片段中使用它。还有第三个片段的同一Item.java类的另一个表Item3。

一种解决方案是创建另一个类Item2.java和Item3.java,并将Item.java扩展到该类,然后为该类创建DAO和Room Database。但这将是多余的。

问题:-

还有其他方法可以创建彼此不相关的同一类的多个表吗?

1 个答案:

答案 0 :(得分:0)

为什么不在Item表中添加另一列指示片段,并在该列上建立索引呢?这样,您的所有数据将被存储在同一张表中,同时又以新列来区分,索引将确保您可以更快地检索到任何片段。