gpt4 book ai didi

android - Android中如何像iOS一样对sqlite数据库进行轻量级迁移?

转载 作者:行者123 更新时间:2023-11-30 03:21:52 25 4
gpt4 key购买 nike

我想在现有表中添加一些键,例如“URL”。

在 iOS 中,我可以创建新版本的数据模型并执行轻量级迁移。

但是,SQLiteOpenHelper 中的默认方式似乎是销毁旧数据库并创建新数据库。

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// Drop older table if existed
db.execSQL("DROP TABLE IF EXISTS " + TABLE_1 + ", "
+ TABLE_2 + ", " + TABLE_3 + ", "
+ TABLE_4);
// Create tables again
onCreate(db);
}

如何在 Android 中保留旧数据库并添加一些新 key ?

最佳答案

您可以编写自己的升级 sql 查询来升级您的数据库。

删除所有表后调用 onCreate 只是一种升级表的简单方法,无需关心 FK、空字段或数据库版本。

使用 oldVersion 和 newVersion 对您的数据库进行正确的更改(更改表)。

onUpgrade doc

关于android - Android中如何像iOS一样对sqlite数据库进行轻量级迁移?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18985459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com