.net – 在源代码管理中管理我的数据库

前端之家收集整理的这篇文章主要介绍了.net – 在源代码管理中管理我的数据库前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当我正在使用一个新的数据库项目(在VS2008中)时,由于我从未开始从头开发数据库,​​我立即开始研究如何在源代码控制中管理数据库(在本例中为Subversion).

我在SO上找到了一些信息,包括这篇文章Keeping development databases in multiple environments in sync.One of the answers in particular指向了一些链接,所有这些链接都有很好的有用信息.

我正在阅读K. Scott Allen撰写的series of posts,描述了他如何管理数据库更改.从我的阅读(并请原谅我的问题的无意义),似乎数据库本身从未被检查到存储库.相反,可以在存储库中检查可以构建数据库的脚本以及测试数据(也从脚本填充).最终,这意味着,当开发人员测试他或她的应用程序时,将运行这些脚本,这些脚本是构建过程的一部分.这可确保数据库是最新的,但也可以从每个开发人员的计算机本地运行.

这对我来说很有意义(如果我确实正确地阅读了这一点).但是,如果我遗失了某些内容,我将不胜感激,或者需要更多指导.另外,我想问的另一个问题 – 这是否也意味着我不应该检查从Visual Studio创建的mdf或ldf文件

感谢您的帮助和其他见解.永远感激.

解决方法

这是正确的,你应该检查脚本而不是数据库文件本身.

我不是建立测试数据的粉丝,除非数据本身将模仿生产所具有的数据的大小(或者,在新数据库的情况下,它是有的).为什么?因为针对具有100条记录的表编写代码并不会告诉您当有10,000,000条记录时它是否会及时运行.我认为有太多糟糕的设计选择来自那些认为小数据集可以用于开发的人.

在这里,我们不允许开发人员在他们的盒子上有一个单独的数据库(这通常会限制数据库的大小,因为它不是连接到SAN的服务器),而是他们必须对定期刷新的开发数据库起作用. prod(然后运行所有新的dev脚本)以保持数据的正确大小.我认为重要的是你的dev数据库环境尽可能地匹配prod,包括设备配置,数据库的大小等等.没有什么比花费很长时间开发一些在生产上根本无法工作或必须是立即取下,因为它太慢了系统.

现在跳下我的肥皂盒.

猜你在找的MsSQL相关文章