首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用事务升级SQLite数据库

使用事务升级SQLite数据库
EN

Stack Overflow用户
提问于 2015-05-01 00:25:38
回答 1查看 229关注 0票数 0

我有一个网站解决方案,用于每个租户帐户上的SQLite数据库。我们没有深入了解为什么选择这个解决方案,我们之所以选择它,是因为分布式/离线系统上的SQLite支持。

所有数据库都使用相同的PHP文件结构进行操作。我希望迭代更新所有帐户的数据库版本,以便它们都在相同的版本号。

我有一个遍历每个脚本的脚本,可以使用PHP(Yii)或shell来执行查询。

我想将对每个数据库的操作包装在一个事务中。看起来DDL命令似乎已经是自动提交的了。

问:如何完成SQLite DB升级,如果升级失败,将报告失败?使用该报告,我可以提示系统重新尝试或向管理员报告错误。理想情况下,我希望将整个升级包装在一个事务中,以防止不一致,但我相当确定这是不可能的。

我的一个想法是在升级过程中临时备份数据库,并在成功时将其删除。

EN

回答 1

Stack Overflow用户

发布于 2015-05-09 01:19:32

正如CL在评论中所说,动态链接库在SQLite中是完全事务性的。因此,对于我们系统中的每个数据库,我们将其包装在一个事务中,它将自动执行。我们利用该应用程序来确保所有数据库在升级过程中失败时都能成功升级。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29973010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档