我还没有花费大量的时间来研究这一点,主要是寻找升级/更改DB模式的最佳实践。
我们正在积极开发一个新产品,因此我们经常需要对数据库模式进行添加或更改。我们还有许多数据库副本--一个用于测试环境,一个用于生产环境和开发环境,随便你怎么说。我们真的不希望每次我们想要对数据库进行更改时,都要将测试数据抛到脑后。
有没有好的方法来自动化或者处理这个呢?我们没有人真的需要处理这件事,所以...
发布于 2010-05-10 09:47:00
规格化,规范化,规格化
然后再做一次。
这意味着您只需将新的表/视图和其他美味可口的功能添加进去,而不会干扰其他表。
我见过一些数据库声称是标准化的,但事实并非如此。在考虑把事情分开的时候,试着向前看。
你可能会为连接付出一点代价,但是查询视图而不是表,并采用一个好的缓存策略,你就可以了。一些NoSQL数据库提供了更好的灵活性,但就成熟度而言,目前有点像精神分裂症的侄子。
我们有一个与SQL无关的表描述,它被转换成SQL并进行更新,还有一个ORM/ActiveRecord/Mapper,它只使用来自SQL数据库模式本身的数据来确定发生了什么……这意味着你的应用程序也会根据变化进行调整。我们还大量使用存储过程进行插入,并且主要从视图中读取。
https://stackoverflow.com/questions/2799896
复制相似问题