繁体   English   中英

使用Alter sqlite将列添加到两个表

[英]Add columns to two tables using Alter sqlite

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

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

例如,我有两个表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!

如何在我的Android应用程序中创建数据库?

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

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");
}

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM