如何更新保存用户数据的数据库

时间:2013-03-24 14:59:21

标签: android database sqlite

我有一个数据库,用户可以在每个元组中更改一些值。我还希望能够添加新行并更新某些现有内容。我现在使用的代码不够好,因为它在onUpdate()

上创建了一个新的数据库
private static class DatabaseHelper extends SQLiteOpenHelper {

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        Log.w("dB update", "Upgrading database from version " + oldVersion + " to " + newVersion + ", which will destroy all old data");
        db.execSQL("DROP TABLE IF EXISTS " + MetaData.TABLE);
        onCreate(db);
    }
}

我的问题有解决方案吗?或者至少可以避免升级列,保留该列中的用户值?提前致谢

2 个答案:

答案 0 :(得分:3)

在SQLite中,您可以使用ALTER表对其进行编辑。 (http://www.sqlite.org/lang_altertable.html

正如您在链接中看到的,您可以添加和重命名列。

感觉就是你所需要的一切

答案 1 :(得分:0)

您可以使用触发器和可能的事务来执行此操作。而且你应该寻找SQL查询。