我正在开发一个使用本地 SQLite 数据库的 AIR 应用程序,并且想知道在分发新版本的应用程序时如何管理数据库架构更新。还考虑跳过某些版本的更新。例如。不是从 1.0 到 1.1,而是从 1.0 到 1.5。
您会推荐什么技术?
最佳答案
对于 SQLite,您可以使用 user_version pragma 来跟踪数据库的版本。获取版本:
PRAGMA user_version
设置版本:
PRAGMA user_version = 5
然后我将每组更新保存在一个 SQL 文件中(嵌入在应用程序中)并运行更新到最新版本所需的更新:
Select Case currentUserVersion
Case 1
// Upgrade to version 2
Case 2
// Upgrade to version 3
Case etc...
End Select
这允许应用程序自行更新到最新版本,而不管数据库的当前版本如何。
关于数据库模式更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/550662/