6

我从 SQLPackage 收到此错误:“已添加具有相同密钥的项目”是什么意思?谷歌不会帮助我..

"c:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\sqlpackage.exe" /Action:DeployReport /SourceFile:"XXX.dacpac" /Profile:"publish.xml" OutputPath:"Report.xml "

为服务器“srv”上的数据库“XXX”生成报告。

*已添加具有相同密钥的项目。

没有创建输出文件。

从 Visual Studio 工作生成脚本(我得到一个脚本)。我在同一个解决方案中测试了三个项目。只有一个人创建了一个 DeploymentReport 文件。

发表作品。

4

3 回答 3

9

我刚遇到这个问题。对于其他任何人,请尝试以下操作。

  1. 删除项目文件夹根目录下的 [project].dbmdl 文件。
  2. 关闭并重新打开项目。
  3. 清理解决方案/项目。
  4. 再次构建 DACPAC。
  5. 发布/编写/报告 DACPAC。

我相信这与依赖关系的缓存变得腐败有关。

于 2016-02-16T16:35:29.533 回答
4

我遇到了同样的问题。奇怪的是我可以毫无问题地从 Visual Studio 发布,但是当我尝试使用 SqlPackage 从命令行发布时,我得到了这个错误。

对我来说,我的 *.publish.xml 文件中有重复的 SqlCmdVariable。我删除了重复项,现在从命令行发布没有问题。

于 2017-05-12T00:18:45.350 回答
1

使用 SqlPackage.exe 部署时我遇到了同样的错误(使用 VS 部署工作),但这不是发布文件中的错误。我的问题是,我两次添加了不同版本的 msdb。所以请不要忘记检查数据库引用是否有任何重复项。

于 2021-10-08T05:32:57.107 回答