使用 Alter sqlite 向两个表添加列


Add columns to two tables using Alter sqlite

我正在尝试在我的安卓应用程序上进行更新。我有一个构建数据库,如果首次安装应用程序,则会复制该数据库。假设用户可能在表中存储了一些值。

我想

发布一个新的更新,我想在其中更改数据库以在差异表中添加更多列

例如,我有两个表,A 和 B,我想在两个表中添加一行 xx。

如果我这样做

 db.execSQL("ALTER TABLE TTFindings ADD COLUMN imagePath STRING");
 db.execSQL("ALTER TABLE TTValues ADD COLUMN imagePath STRING");

我认为我们不能两次更改表格,这是错误的? Can't access Read only database如何进行查询以同时更改两个表?

升级数据库的受支持方法是通过使用SQLiteOpenHelper的onUpgrade方法。 您不应该尝试直接通过自己的代码执行此操作。

请在此处查看我对类似问题的回答。 如果有帮助,请+1!

如何在我的安卓应用中创建数据库?

使用此代码。我希望这有帮助

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
          if (newVersion > oldVersion) 
{
    db.execSQL("ALTER TABLE TTFindings ADD COLUMN imagePath STRING");
     db.execSQL("ALTER TABLE TTValues ADD COLUMN imagePath STRING");
}
}