Android房间插入失败

时间:2018-08-29 10:08:56

标签: android dao android-room

所以我一直在和Room苦苦挣扎,试图了解应该怎么做

我的实体

@Entity(
        foreignKeys = {
        @ForeignKey(
                entity = Movie.class,
                parentColumns = "id",
                childColumns = "movieId")
        },
        indices = @Index("movieId")
)
@TypeConverters(MovieConverter.class)
public class UpcomingMovies {

    @PrimaryKey(autoGenerate = true)
    public int id;

    @ColumnInfo
    public int movieId;

    @ColumnInfo
    public Movie movie;
}

道插入法

@Insert
void insertUpcomingMovies(List<Movie> movies);

我有一个辅助方法让我知道此表中是否有数据,但它始终返回0

@Query("Select count(*) FROM UpcomingMovies")
LiveData<Integer> countUpcoming();

我做错了什么? UpcomingMovies是否需要List<Movie> movies?我在这里的理由是UpcomingMovies中的每个条目都会有一个Movie,所以我只需要一个Movie实例,因此在插入时我要传递一个List<Movie>。我的推理不正确吗?

我期望的结果像是

  • UpComingId-MovieId-电影(电影已串化)
  • 1; 33; {..名称:侏罗纪公园,身份证:33 ...}
  • 2; 77; {..名称:可能执行的任务,id:77 ....}

有人请给我一些见识

0 个答案:

没有答案