在SQLite数据库中,insertWithOnConflict在android应用程序中不起作用

时间:2018-05-18 10:24:27

标签: java android android-sqlite

在我的sqlite数据库中,我在应用程序中使用insertWithOnConflict方法忽略我的sqlite数据库中的重复数据输入。但有些我不知道它在我的代码中不起作用。如果任何人有关于这个问题的解决方案,请帮助我。

下面是我的代码。

 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 :(得分:0)

您需要使用CONFLICT_REPLACE来满足您的要求,

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