1

使用 SQL Compare 10,我创建了一个 .scp 文件,它将本地数据库(在本地构建服务器上)与源代码控制中的内容(通过 redgate SQL 源代码控制的 TFS)进行比较

使用 GUI 列出了许多不同之处。

从命令行运行 .scp 文件时,根本没有列出任何差异。- “选择的对象相同或在比较中没有选择对象”

命令行是

"C:\Program Files (x86)\Red Gate\SQL Compare 10\sqlcompare.exe" /project:"C:\Users\CIUser\Documents\SQL Compare\SharedProjects\MyDBName v MyDBName (Head).scp" /scriptfile:deploy_MyDBName.sql /include:identical /force

注意

The /include:/identical switch means the compare will not report an error if no changes are detected
The /force switch forces an overwrite of the sql script, rather than causing an error
4

2 回答 2

8

好的,解决了这个问题,虽然它对我来说似乎有点迟钝,至少可以这么说。

在保存项目文件之前(或至少在从命令行运行它之前),您需要:

a)您必须运行比较-但是..比较需要找出一些差异

b) 由于已经发现了一些差异,当显示结果时,在标题行中,您需要选中 2 个“对象名称”列之间的复选框,然后

c) 保存您的项目。

虽然项目文件是一个文本/XML 文件,但执行上述步骤会在文件中添加一些加密的 guff,这似乎使其工作 - 即它不仅仅是将其中一个 xml 值更改为 True 是 False。

希望这对某人有所帮助......肯定有更好的方法来解决这个问题......

于 2013-03-28T12:51:25.760 回答
0

遇到了同样的问题,并且即将对我一直在处理的代码变得无用感到绝望,但是我使用了以下开关来修复:

/包括:相同的 /ReportAllObjectsWithDifferences

于 2019-11-22T17:38:22.187 回答