Android SQlite OnUpgrade问题

我在Android Market中有一个名为SieveSMS的应用程序。它基本上可以让人们根据规则阻止传入的短信,就像outlook对电子邮件一样。

我更改了DB结构如下(在同一个表中)

1)数据库版本2

添加新列“未读”

2)DB版本3

添加新列“例外”

如果已经拥有应用程序但尚未升级到版本2的用户现在看到该应用程序的第3版会发生什么? 如何确保版本2中的更改也可供人们使用?

除此之外,如果安装了版本2并且他们尝试升级到版本3的人会发生什么情况。onUpgrade会给我一个“未读”列已经存在的错误吗?

您是否认为根据当前版本的DB在onUpgrade方法中使用条件条件是明智的?