Sqllite DB保留了JSON的较早读取值



我正在阅读一个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。

相关内容

  • 没有找到相关文章

最新更新