簡體   English   中英

如何更新Room數據庫中的現有行?

[英]How to update existing rows in Room database?

我有一個DAO類,用於在特定日期已經存在注釋時更新注釋。 如果有注釋,DAO將創建一個新注釋。 這是DAO界面:

@Insert(onConflict = OnConflictStrategy.REPLACE)
public long insertNote(Note note);

@Update
public int updateNote(Note note);

這是我從數據庫中讀取所有數據的方式:

viewModel = ViewModelProviders.of(this).get(NoteListViewModel.class);
viewModel.getNoteList().observe(MainActivity.this, new Observer<List<Note>>() {
      @Override
      public void onChanged(@Nullable List<Note> noteList) {
            Log.d("Note List Items", noteList.toString());
      }
});

現在,我不知道要檢查,比較和更新數據庫中的現有行。

您的Note @Entity類具有一個主鍵。 updateNote()將基於該主鍵更新行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM