【发布时间】:2021-04-16 10:29:22
【问题描述】:
我正在尝试将数据同时插入两个表,同时将表 1 中的主键插入表 2。
实体 1:
@Entity (tableName = "all_equip")
public class EquipInfo implements Comparable <EquipInfo>{
@PrimaryKey (autoGenerate = true)
private int equipId;
private int gymId;
private int userId;
private boolean isActive;
private String equipGrade;
...other
实体 2:
@Entity (tableName = "my_equip_data")
public class MyEquipData {
@PrimaryKey (autoGenerate = true)
private int id;
private int userId;
private int equipId;
...other
我需要的是,当一个新的实体 1 插入到 all_equip 中时,一个新的实体 2(包含用户特定数据)也插入到 my_equip_data 中,但主键(equipId)来自实体 1。
我正在使用带有 Room 的 SQLite 和简单的 @Insert 查询。
我的道:
@Dao
public interface EquipInfoDao {
@Insert
void insert (EquipInfo equipInfo);
我的实用程序:
public Boolean addNewEquip (Context context, EquipInfo equipInfo) {
Database.getInstance(context).equipInfoDao().insert(equipInfo);
return true;
}
我已设法在其他查询中加入这些表,但不确定如何插入第一个实体、检索该新插入条目的equipId,然后将其作为外键添加到第二个实体中。多合一 OnClickListener。
【问题讨论】:
-
您说您使用的是 sqlite,但添加了一个
标签。你用的是哪一个?
标签: java android sqlite android-room