我正在阅读一个JSON文件,并使用ContentValues和以下代码将其放入我的Sqllite数据库中:我尚未添加json读取部分,因为文件等的读取正常。我的问题是:
当我在JSON文件中进行更改并重新运行应用程序时,我仍然从db中获得较旧的值。
ContentValues values = new ContentValues();
SQLiteDatabase db = this.getWritableDatabase();
values.put(KEY_QUES, quest.getQuestion());
values.put(KEY_ANSWER, quest.getAnswer());
values.put(KEY_OPTA, quest.getOptA());
values.put(KEY_OPTB, quest.getOptB());
values.put(KEY_OPTC, quest.getOptC());
db.insert(TABLE_QUEST1, null, values);
每个运行将创建一个新的行。您需要阅读正确的行。阅读所有行的一个示例:https://stackoverflow.com/a/122299215/971170
在添加新值或使用替换函数之前尝试清除表。
db.dropAll();
删除所有方法
public void dropAll(){
SQLiteDatabase db=this.getWritableDatabase();
db.execSQL("DROP TABLE IF EXISTS " + advTABLE);
db.execSQL("DROP TABLE IF EXISTS " + cliTABLE);
db.execSQL("DROP TABLE IF EXISTS " + oppTABLE);
db.execSQL("DROP TABLE IF EXISTS " + casTABLE);
onCreate(db);
}
获取列表中的值,然后再次将值插入db。