当与其他几个人一起工作时,通常有几个人有不同的领域,如数据库.
@H_403_15@解决方法
我的挑战是如何让几个人在持续的集成环境中编辑数据库模型.
开发人员建议编写一个“版本控制脚本”,其中每个编辑都输入到.sql脚本中,并具有数据库能够检测到的版本号.该文件中的新增功能将在该文件中加上一个版本,并且一旦脚本被提交并且运行了构建,数据库将被更新.
我也听说过发布商/订阅者…并阅读了一下.
您如何在日常工作中管理这种情况,以及您可以提供什么建议,使数据库更改尽可能无缝地运行?
**编辑**
已经提到了迁移框架和迁移脚本.如果你有一些实践经验,并建议一个框架,那也将不胜感激.
引用杰夫阿特伍德在优秀的
Get Your Database Under Version Control职位:
…
I was thinking about this again
because my friend and 07001 K.
Scott Allen just wrote a brilliant
five part series on the philosophy and
practice of database version control:
- 07002
- 07003
- 07004
- 07005
- 07006
…
真的,整个系列是值得阅读,即使你们中的很多人似乎是特别感兴趣的第三部分.和BTW,看看第三部分提到的Bulletproof Sql Change Scripts Using INFORMATION_SCHEMA Views文章.您可能已经意识到了,但它解释了为什么写idempotent更改脚本很重要的其他好的做法.
关于工具,您可能需要考虑基于ThoughtWorks软件开发实际经验的UpToDater(以代码为中心),LiquiBase(基于xml)或… dbdeploy的小宝石.这不是第一个不好,但这是我的首选(可用于Java,PHP或.NET).