将数据库版本存储在数据库本身中

时间:2015-01-22 17:15:38

标签: sql database configuration version h2

我正在编写一个使用h2数据库存储数据的程序。 随着我们向软件添加功能,数据库将不断发展,但我们仍然希望用户能够使用较新版本的程序来使用较旧版本的数据库。这样程序可以自动将数据库升级到更新的版本(可能首先要求用户确认)。 要编写这个“数据库升级程序”,我们需要将数据库版本存储在数据库本身中,这样就可以只移动数据库文件(我们使用的是h2数据库引擎的文件模式)。 我们尝试过这样的事情:

TABLE configuration (databaseVersion INT NOT NULL);

但这意味着要有一个表,其中只使用一行而不显式检查行数。

有没有更好的方法呢? 在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

我认为这是一个很好的解决方案,如果只是需要保留数据库版本。

有时您需要持久保存多个此类“全局”设置,例如,如果您的应用程序包含多个模块,并且每个模块都有自己的版本。或者其他内容,例如上次备份的位置。我通常使用的是具有键/值对的settings表,其中key(该表的主键)和value都是varchar类型

相关问题