В базе данных SQLite insertWithOnConflict не работает в приложении для Android - PullRequest
0 голосов
/ 18 мая 2018

В моей базе данных sqlite я использовал метод insertWithOnConflict в приложении для игнорирования повторяющегося ввода данных в моей базе данных sqlite в приложении Android.Но кое-что, как я не знаю, это не работает в моем коде.Если у кого-то есть решение по этой проблеме, помогите мне.

Здесь, под моим кодом.

 public void AddPattern(Pattern_Model pattern_model) {
    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues values = new ContentValues();
    //values.put("id",pattern_model.getId());
    values.put("pattern_name", pattern_model.getPattern_name());
    values.put("value", pattern_model.getPattern_value());

   long ln= db.insertWithOnConflict(TABLE_NAME, "pattern_name",values, SQLiteDatabase.CONFLICT_IGNORE);

    //db.insert(TABLE_NAME, null, values);
    db.close();
    if(ln != -1){
        Log.d("replace", "ok");
    }
}

1 Ответ

0 голосов
/ 18 мая 2018

Вам нужно использовать CONFLICT_REPLACE для вашего требования,

long ln= db.insertWithOnConflict(TABLE_NAME, BaseColumns._ID,values, SQLiteDatabase.CONFLICT_REPLACE);
...