在客户端维护数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在客户端维护数据库相关的知识,希望对你有一定的参考价值。

客户端:我有一个桌面应用程序。该应用程序还有一个Sqlite文件。我在客户端计算机上使用WIX Toolset安装它。当我在应用程序中输入一些数据时,它会保存在数据库文件中。

服务器端:我对我的应用程序进行了一些更改,例如向数据库文件中的表添加额外的列。

我从服务器端进一步安装了新版本的应用程序。

问题:一旦我从客户端打开我的sqlite文件,我以前的所有数据都会丢失。我得到的只是一张空白的桌子。

问题:在安装升级版应用程序后,是否可以维护存储在数据库中的先前数据以及新更改?

答案

这是MSI的一个常见问题,它通常用XML文件表达,但它是一样的。

MSI可以覆盖或不覆盖该文件,无论哪种方式都是错误的。您希望架构更改,但您不希望丢失用户数据,并且MSI文件是原子的。

最好的办法是使用MSI安装的文件作为种子/模型,在应用程序运行时将其克隆到另一个目录并在那里存储用户数据。在后续登录时,检查种子数据库是否有架构更改,并以此为基础以编程方式迁移克隆的数据库。

以上是关于在客户端维护数据库的主要内容,如果未能解决你的问题,请参考以下文章

openGauss维护管理之客户端连接工具gsql

严格维护客户的数据机密性

数据库从未维护

具有向后兼容性的数据快照维护和开发

MySQL,Oracle,PostgreSQL通过web方式管理维护, 提高开发及运维效率

Oracle数据库web维护管理及监控