只是想知道是否有人曾经想过/实现过这样的事情。
我正在考虑实施数据库版本控制方案。每天一次,将运行一个作业,将所有DDL和源代码输出到一个文件中。然后将针对该文件运行哈希。散列将以版本号存储在DB中。无论何时更改散列,都会更新散列值并增加版本号。
这有意义吗?除了事实上每天会发生一次之外,还有人看到任何巨大漏洞吗?
有人做过类似的事吗?
答案 0 :(得分:1)
以下是some random guy关于该主题的博客文章。他链接到一些好的文章来提出想法。
答案 1 :(得分:0)
另一种方法可能是编写增量更改的脚本,以便这些脚本的总和代表您当前的版本。优点是 - 特别是如果您在团队中进行开发 - 可以在提交到存储库之前在本地实例上测试各个脚本。
如果更改频繁,我会使用一系列增量脚本,如果数据库代码达到一定的稳定性,我会使用您的方法。
答案 2 :(得分:0)
不确定您认为是什么用途。我倾向于使用AUDIT和/或DDL触发器捕获数据库中的代码更改。
我不会用它代替适当的源代码控制版本控制,但如果它不存在并且你无力将其置于适当位置,它可能总比没有好。
有人认为有时候参考数据和代码一样重要。
答案 3 :(得分:0)
Workspace Manager的内容虽然用于版本化数据:
http://www.oracle.com/technology/products/database/workspace_manager/index.html