使用Room Persistence Library插入多个表格
问题描述:
这是我第一次使用Room。我有一类叫做:使用Room Persistence Library插入多个表格
@Entity(tableName = "users")
class User{
@PrimaryKey
@ColumnInfo(name = "id")
@SerializedName("id")
String id;
@ColumnInfo(name = "name")
@SerializedName("name")
String name;
@SerializedName("shift")
@Ignore
List<Shift> shifts;
}
@Entity(tableName = "shifts")
class Shift{
@PrimaryKey
@ColumnInfo(name = "id")
@SerializedName("id")
String id;
@ColumnInfo(name = "start_time")
@SerializedName("start_time")
String startTime;
@ColumnInfo(name = "end_time")
@SerializedName("end_time")
String endTime;
}
我想这两个是在单独的数据库表,所以我不能用户@Embedded注解,因为它会创建一个使用所有字段作为列一个表。我正在使用上面的User类来存储来自服务器的json响应,以及在json对象中获取用户和移动细节信息的位置。
有什么办法,我插在用户表用户详细信息我能尽快插入转变表移位的细节?我最初认为这将使用@Embeded处理,但是这将创建转变表用户表中我不想要的表列。
有人可以帮我关于我如何处理这个房间持久性库。类似的,我也需要做删除操作。
感谢
答
有什么办法,我插在用户表中的用户的细节,我可以尽快插入轮班表中的转移细节?
创建自己的DAO @Transaction
方法要求User
和Shift
插入。
类似的,我将不得不删除以及。
如果您修复Shift
类,使得它具有与适当的级联删除选项@ForeignKey
关系User
,删除User
会删除其Shift
行也是如此。在您当前的实施中,User
和Shift
无关。
+1
谢谢,是的,我们更新了具有外键的Shift类。它使事情变得更容易。 – Neha
您是否正在获取用户和班次数据作为回应? –
@BurhanuddinRashid是 – Neha
请发送代码为您正在获取的响应和Dao类的插入 –