0

我有一个数据库,用户可以在其中更改每个元组中的一些值。我还希望能够添加新行并更新一些现有行的内容。我现在使用的代码还不够好,因为它在 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);
    }
}

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

4

2 回答 2

3

在 SQLite 中,您可以使用 ALTER 表来编辑它。( http://www.sqlite.org/lang_altertable.html )

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

感觉这就是你所需要的一切

于 2013-03-24T15:12:23.327 回答
0

您可以使用触发器和事务来执行此操作。你也应该寻找 sql 查询。

于 2013-03-24T15:05:34.120 回答