【发布时间】:2013-10-29 10:38:14
【问题描述】:
对于我看到的大多数示例和教程,如果 onUpgrade 方法中存在表,则始终建议执行 SQL 以删除表。
为什么要删除表,因为这会删除所有数据,用新版本替换旧数据库版本不是更好吗?
这将是我无法理解的事情,也没有在网上列出原因。
谢谢
|山姆 |
【问题讨论】:
标签: java android sql sqlite sqlhelper
对于我看到的大多数示例和教程,如果 onUpgrade 方法中存在表,则始终建议执行 SQL 以删除表。
为什么要删除表,因为这会删除所有数据,用新版本替换旧数据库版本不是更好吗?
这将是我无法理解的事情,也没有在网上列出原因。
谢谢
|山姆 |
【问题讨论】:
标签: java android sql sqlite sqlhelper
为简单起见。删除旧版本并重新创建新版本既简单又直接,但也具有破坏性。在许多情况下,这样的数据丢失在开发时并不是一个问题。
编写正确的数据迁移代码将是另一个示例/教程的主题,因为它固有地涉及至少两个版本的数据库架构,因此涉及数据库助手。在简单的入门教程中包含迁移示例只会增加不必要的复杂性。
【讨论】:
因为它们是教程:它们假设您在其中没有有价值的数据(或根本没有数据)。在这种情况下,升级架构的最简单方法是删除旧表并创建新表。
别想了,你是对的。
【讨论】: