从visual studio更新SQL脚本

本文关键字:SQL 脚本 更新 studio visual | 更新日期: 2023-09-27 18:06:39

我们的开发团队有10名成员,他们正在构建windows应用程序,我们正在使用团队基础服务器进行源代码控制。

应用程序使用sql server, sql server将在客户的服务器机器上。

我想问,开发人员在创建表或存储过程时如何更新脚本。如何处理冲突?

从visual studio更新SQL脚本

当你使用orm如实体框架或nHibernate时,你不应该创建表更新脚本(除非你必须将数据从一列/表移动到另一列/表),框架应该为你做,如果你告诉它(这是我在我的代码中仍然有nHibernate的唯一原因),通常在应用程序启动时,但你也可以将此功能转移到你手动调用的外部程序(警告:容易出错)。

你应该总是使用数据库优先的方法,因为你的数据结构比你的代码重要得多。

存储过程、函数和视图,你只要把它们全部删除,然后重新创建它们(按照依赖关系的顺序),其他的一切都太麻烦了,而且太容易出错。SSMS有这个功能来创建删除/创建视图/存储过程等脚本,但它没有得到依赖关系的顺序正确,所以你必须测试,并手动纠正它,除非你写自己的工具(我建议,但这是困难的-依赖关系解决需要拓扑排序器和正则表达式)。

至于版本控制,如果几个人同时在一个数据库上工作,那就会出现问题。

RedGate已经为SQL-Server/SSMS集成了TFS版本控制,不知道他们是否已经为SQL-2012/2014更新了,但我敢打赌他们已经更新了。

为了尽量减少冲突,我建议你们在办公室里都在同一个数据库上开发,除非不可能。