对那些敏捷的从业者来说......
如何在项目期间管理对数据库模式的更改?我的假设是,在敏捷项目中,所涉及的任何数据库的模式都将改变并重构,就像代码库一样.
这个假设是否正确?如果是这样,您是否拥有用于帮助保持平稳运行的特定工具或流程?
AgileData.org是一个很好的资源 - 远远超过我对敏捷数据库开发的单一响应.特别是,您可能对Agile Data Best Practices感兴趣.如果您使用SQL Server,您可能也对Red Gate软件的SQL Compare感兴趣.我们的DBA使用它来帮助我将现有应用程序的QA更改迁移到Production.
每次更新,我都会:
部署前滚和回滚脚本,
部署"从头开始构建数据库"脚本,
部署数据迁移脚本,以及
强制执行一种机制,将代码锁定到数据库版本,即测试返回当前版本数据库的值,如果存在不匹配,系统会对不匹配进行大量保管和惨叫.
HTH
干杯,
抢