更新数据库表而不会丢失Android

时间:2017-06-23 13:37:24

标签: android database sqlite

我有一些关于移动应用数据库管理的基本问题。我已经搜索过了,但找不到我的问题的答案。

假设我有一个体育表格,其中包含一些体育名称,这些名称对每个用户都是相同的。当用户进行运动时,锻炼将被添加到锻炼表中。因此,Workouts表对每个用户来说都是特定的。

1。用户手机中的表格

enter image description here 那么,如果我想在Sports表中添加1项运动并发布更新怎么办?我可以在 onUpgrade 方法中更新Sports表。

2。新版体育表

enter image description here

问题 每个人的电话中的锻炼表格会根据新的体育表格发生变化吗? (请记住锻炼表对每个用户都不同)

enter image description here

我知道这是一个非常长的帖子,但是我想解释一切。提前谢谢。

1 个答案:

答案 0 :(得分:0)

当您更新数据库的架构而不是向现有表添加更多数据时,将调用SqlOpenHelper的OnUpgrade方法。我想你可以用它来对你的数据进行版本控制,但对我而言,这似乎是一种奇怪的方式。

架构更改例如:

  • 向表中添加列。
  • 添加表格。
  • 从表格中删除列。 等

您在OnUpgrade中运行的任何代码都将决定设备上数据库的结构。这完全取决于你。

此外,向Sports表添加数据根本不会影响锻炼表(假设您没有使用触发器)