Room Persistence Libraryを使用して、テーブルにエントリがないかどうかを検出するにはどうすればよいですか?この問題に取り組む方法についての情報が見つかりません。
Intを返す「SELECTcount(*)FROM ...」クエリ、または配列を返す「SELECT * FROM ...」クエリを作成し、配列のサイズを確認します
クエリを実行して、結果が空かどうかを確認するだけです。このような
daoのこのコード
@Query("SELECT * FROM table ORDER BY id LIMIT 1")
LiveData<TaskEntry> loadlastTask();
次に、ViewModelクラスで、これを呼び出して確認できます
LiveData<TaskEntry> mDBTask;
private AppDataBase mDB;
mDBTask = mDB.taskDao().loadlastTask();
if(mDBTask.getValue() == null ){
//table is empty
}else{
// table is not empty
}
行数を返すクエリを実行します。