不久前,我用sdf数据库制作并发布了软件。现在我想改进它并添加更多功能:数据库中的新表单和新表。如何将数据存储在表中(表在我的新数据库中仍然具有相同的属性)并将它们添加到我的新数据库中?
通常,解决此问题的方法不是将数据移动到新数据库,而是使用SQL ALTER
语句在旧数据库中添加或删除所需的列。新程序的安装程序需要足够智能以检测旧的数据库文件,并为安装程序编写代码(或在程序启动时进行检查),以便能够处理升级过程。
如果您正确地进行源代码控制,这将特别有效。使用源代码控制,您必须提交或检入代码的更改,但提交一个需要数据库才能拥有尚未提供的列的更改并不合适。因此,良好的源代码控制环境鼓励您编写ALTER
语句,以添加该列作为其余功能工作的一部分。有人在同一张桌子上需要不同的栏目吗?他们写自己的ALTER
声明。之后,他们的分支可以与您的分支合并,但数据库仍然完全按照需要结束。此外,当您准备发布应用程序时,可以收集这些对数据库项目的提交并将其用于升级过程。