Java 在SQLite数据库中,insertWithOnConflict在android应用程序中不起作用
在我的sqlite数据库中,我在应用程序中使用insertWithOnConflict方法来忽略我的sqlite数据库android应用程序中的重复数据条目。但有些我不知道的是,我的代码中没有它。如果有人有关于这个问题的解决方案,那么请帮助我 下面是我的代码Java 在SQLite数据库中,insertWithOnConflict在android应用程序中不起作用,java,android,android-sqlite,Java,Android,Android Sqlite,在我的sqlite数据库中,我在应用程序中使用insertWithOnConflict方法来忽略我的sqlite数据库android应用程序中的重复数据条目。但有些我不知道的是,我的代码中没有它。如果有人有关于这个问题的解决方案,那么请帮助我 下面是我的代码 public void AddPattern(Pattern_Model pattern_model) { SQLiteDatabase db = this.getWritableDatabase(); ContentV
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");
}
}
您需要使用
CONFLICT\u REPLACE
来满足您的需求
long ln= db.insertWithOnConflict(TABLE_NAME, BaseColumns._ID,values, SQLiteDatabase.CONFLICT_REPLACE);
你能帮我一下吗?谢谢你的回复。我已将CONFLICT_IGNORE更改为CONFLICT_REPLACE,但仍不起作用。数据已添加到我的数据库中,而不是REPLACE。我希望每次都为同一个图案名称更改值,但不能这样做。“value”和“pattern\u name”是我的列。您可以使用BaseColumns。\u ID