2014-09-25 111 views
3

是否有方法从Visual Studio和TFS项目生成更改脚本?我想要选择两个版本的数据库或输入日期范围,并获取可以传递给DBA的更改脚本以应用于生产数据库。从TFS和Visual Studio数据库项目生成更改脚本

我无权访问生产模式以进行模式比较。 我的DBA需要SQL脚本,不会使用快照方法。

我正在使用Visual Studio 2013和SQL Server 2008及更高版本。

帮助!

+0

Dacpacs?可能是一个选项 – 2014-09-25 14:29:32

+1

Dacpacs是快照,他们不想使用该方法。 DBA虽然没有积极参与开发过程,但希望能够在触摸服务器之前查看更改(单独查看)。 – 2014-09-25 15:15:54

+1

dacpac可用于生成sql脚本,但不能执行它。这样DBA就可以检查他想要的全部内容。使用'sqlpackage/action:script'选项并将源指定为您的dacpac,并将目标指定为生产服务器连接字符串。这不会以任何方式更改服务器,并允许他们检查更改。 – jessehouwing 2014-09-28 10:26:05

回答

0

我会建议你的dba的态度阻碍你按照正常的节奏传递高质量软件的能力。与生产相比,是实现变更脚本的正确且受支持的方法。并记住您正在使用的工具是由SQL Server团队构建和支持的。

如果您知道当前生产版本何时发货,您可以创建一个工作区并获取特定版本的代码。如果你编译它,你应该有一个该版本的.dacpac,你可以在比较中使用它。

另一个选择是要求DBA将最后一个生产版本恢复到另一台服务器,以便您可以“测试”脚本。然后你可以从那里生成你的脚本。

无论您选择什么,您都需要以管理层的身份提出这个问题,作为持续交付的拦截器。

+0

我明白你在说什么,你正在向合唱团传道。根据我收到的答复,我怀疑我的问题的答案是简单的号。谢谢! :-) – 2014-09-26 20:06:54

+0

不,这是与您以前发货的DackPack或生产克隆进行比较。 – 2014-09-28 08:32:15

相关问题