gpt4 book ai didi

android - 如何向 android 中不存在的 Sqlite 数据库表添加新列?

转载 作者:IT王子 更新时间:2023-10-29 06:32:16 25 4
gpt4 key购买 nike

在版本升级时,我想在 sqlite 数据库表中添加一个新列,这在 android 中是不存在的。如果该列已经存在,则不应更改表。在 onUpgrade() 方法中,我没有删除表,因为我不想丢失数据。

最佳答案

我把一些评论拼凑在一起得到这个:

Cursor cursor = database.rawQuery("SELECT * FROM MY_TABLE", null); // grab cursor for all data
int deleteStateColumnIndex = cursor.getColumnIndex("MISSING_COLUMN"); // see if the column is there
if (deleteStateColumnIndex < 0) {
// missing_column not there - add it
database.execSQL("ALTER TABLE MY_TABLE ADD COLUMN MISSING_COLUMN int null;");
}

这有意忽略数据库版本号,如果该列不存在则纯粹添加该列(在我的例子中,版本号对我没有帮助,因为当应该添加该列时编号已经变得不稳定)

关于android - 如何向 android 中不存在的 Sqlite 数据库表添加新列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19287248/

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