在sql server中......
我应该通过查询分析器中的对象浏览器维护存储过程,还是作为外部文本文件?为什么?
答案 0 :(得分:4)
外部文本文件可以放在源代码管理中,这是一个更好的解决方案。版本控制数据库很难,这是使数据库与依赖它的所有应用程序保持同步的一个重要步骤。
Microsoft的Visual Studio 2008数据库版本不仅可以实现对数据库脚本的版本控制,还可以在一个步骤,单元测试和其他有趣的事情中进行部署。
答案 1 :(得分:4)
...对源代码管理中的文本文件进行另一次投票。
答案 2 :(得分:1)
很多可能取决于您使用的SQL Server版本,以及回滚到以前版本的SQL的重要性。
我发现使用SQL Server 2005+,它更容易在SQL Server Management Studio中维护它们,因为它全部集成到.NET Framework中。
如果您定期备份数据库,我觉得将备份存储为外部文件会浪费时间。
当然,我完全理解人们希望使用像SourseSafe这样的东西来作为历史备份的额外外部来源。
答案 3 :(得分:0)
一旦你的系统变得足够大,使用对象浏览器找到你的存储过程可能是一个真正的痛苦(并且它不能很好地使它们非常可排序)。虽然我经常喜欢使用对象浏览器,但我可能会建议其他人从外部文件开始,这样你就可以从一开始就对它们进行源代码控制。
答案 4 :(得分:0)
有一个工具可以定期提取存储过程的文本,并将它们存储在源代码管理中。
这样,你就可以获得两全其美。您的文本文件存在并处于源代码管理中,您可以保证它们是最新的。如果有人在你不知情的情况下更改你的存储过程(作为我以前常常会做的老板),你会在“最近的变化”中迅速看到它。
答案 5 :(得分:0)
要么。
源代码管理中的外部文件给人一种很好的感觉,但无法像“普通”源文件那样控制或锁定或检出数据库对象。但是,这是很好的纪律。
如果您拥有强大的生产控制,良好的流程和代码差异工具,那么在对象浏览器中进行管理对于较小的项目是可行的,因为您始终可以检测差异并轻松重置它们。
我希望你不要在生产对象浏览器中意味着...