为什么SQL Server 2014数据库项目的SqlPublish目标失败?

时间:2014-06-20 20:01:56

标签: msbuild sql-server-data-tools sql-server-2014

我的机器有当前(2014年3月)版本的SSDT,Visual Studio 2012 Professional和SQL Server 2014 Developer。我有一个针对SQL Server 2014的SQL Server项目(让我们称之为MyProject.sqlproj)。我尝试了以下内容:

MsBuild.exe MyProject.sqlproj 
            /t:SqlPublish /p:SqlPublishProfilePath=Somewhere.publish.xml

此操作失败,并显示以下错误:

  

部署错误部署72002:内部错误。
  具有类型的数据库平台服务   Microsoft.Data.Tools.Schema.Sql.Sql120DatabaseSchemaProvider不是   有效。您必须确保已加载服务,或者您必须提供服务   有效数据库平台服务的完整类型名称。

如果我将此项目切换到目标2012(并指向2012实例),则此命令将成功运行。我之前曾问过一个可能相关的question,那里的答案解决了我的问题,但这不是问题 - 如果我使用{我能够成功发布2014年DACPAC直接{1}}。

发生了什么,我该如何解决?

1 个答案:

答案 0 :(得分:4)

这里的问题是VisualStudioVersion环境变量没有设置,在这种情况下.sqlproj文件当前默认定位VS2010版本(不支持SQL Server 2014)。调用"设置VisualStudioVersion = 11.0"在运行MSBuild之前将解决问题。