Android:有更好的方法来插入和/或更新数据库条目吗?

Jim*_* D. 11 database android insert

我有一个包含userId和注释的数据库.用户不知道数据库中是否已有注释,因此他们写了一个并单击"提交"按钮.如果没有userId的注释或更新userId已经存在的注释,我想插入此注释:

notesDb.open();
boolean updateResult = notesDb.updateMessage(
        userId,
        details_notes_input.getText().toString());

if(updateResult == true) {
    Log.d("databaseTester", "Updated entry into table");
} else {
    Log.d("databaseTester", "FAILED to update entry into table");
    long insertResult = notesDb.insertMessage(
            userId,
            details_notes_input.getText().toString());
    if(insertResult == -1){
        Log.d("databaseTester", "Failed to insert entry into table");
    } else {
        Log.d("databaseTester", "Inserted entry into table");
    }   
}
notesDb.close();
Run Code Online (Sandbox Code Playgroud)

所以,我几乎试图'更新'一个条目,如果我失败了,那么我试图'插入'它.我不太了解SQL,但我认为会有更好的方法.谢谢.

Dan*_*Lew 13

听起来你可以使用sqlite的REPLACE来解决这个问题SQLiteDatabase.replace().