Visual studio 2013 VS2013数据库项目无法生成

Visual studio 2013 VS2013数据库项目无法生成,visual-studio-2013,database-project,Visual Studio 2013,Database Project,我在VS2013(更新3)中创建了一个新的SQL Server数据库项目,并尝试进行构建,但失败了。我收到的唯一生成输出如下: ------ Build started: Project: Database1, Configuration: Debug Any CPU ------ Creating a model to represent the project... Done building project "Database1.sqlproj" -- FAILED. Build

我在VS2013(更新3)中创建了一个新的SQL Server数据库项目,并尝试进行构建,但失败了。我收到的唯一生成输出如下:

------ Build started: Project: Database1, Configuration: Debug Any CPU ------
    Creating a model to represent the project...
Done building project "Database1.sqlproj" -- FAILED.

Build FAILED.
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
如果我使用详细信息详细信息通过MSBuild.exe构建项目,我会看到以下内部故障:

Task "SqlBuildTask"
  Creating a model to represent the project...
Done executing task "SqlBuildTask" -- FAILED.
搜索web后,我尝试了以下方法来解决此问题,但没有成功:

-重新启动VS

-重新启动机器

-修复VS更新3并重新启动

-修复VS2013并重新启动


我遗漏了什么?

在与微软的一位朋友联系后,他建议修复安装在的数据工具

这就解决了问题


谢谢你,恰克

我有一个类似的问题,正如公认的答案中提到的,修复是解决方案。但不幸的是,链接没有给我一个exe,上面写着修复/卸载。我继续运行exe,但问题仍然存在

我通过使用扩展和更新更新sql数据工具解决了这个问题。以下是步骤

  • 打开VisualStudio
  • 转到“工具”菜单,然后单击“扩展和更新”
  • 在更新下,您将找到数据库项目的更新
  • 单击它,它将下载一个exe
  • 运行exe时,它将请求修复/卸载
  • 单击“修复”并继续

  • 还要检查您使用的MSBuild版本是否正确。您的计算机上通常有多个MSbuild exe。14.0版本应该与Visual Studio 2015配合使用。

    我也有这个问题,但问题在于项目属性“DSP”中的值。我编辑了proj文件,为SQL 2012构建了一个dacpac,然后为SQL 2014再次编辑了该文件,这两个版本都出现了此错误

    最初针对SQL 2008的项目仍然运行良好,因此它不是安装问题

    在我的编辑中,我拼错了DSP元素的值

      <DSP>Microsoft.Data.Tools.Schema.Sql.Sq110DatabaseSchemaProvider</DSP>
    
    Microsoft.Data.Tools.Schema.Sql.Sq110DatabaseSchemaProvider
    
    它应该是(sql用L拼写)

    Microsoft.Data.Tools.Schema.Sql.Sql110DatabaseSchemaProvider
    

    修正了拼写,解决了错误

    出于好奇,如果你为2012年安装了独立的SSDT,你能得到一个成功的构建吗?是否导入了现有数据库?您的项目中有任何错误/警告吗?我没有。另一个解决方案中的迁移数据库项目(2010年至2012年)确实在2013年成功构建。没有错误或警告。我使用的是VS2013 U3 U3 Ultimate。如果在新项目中重新创建此DB,会发生什么情况?你是怎么开始这个项目的?导入现有数据库还是从头开始?(我知道你没有2012年,但如果你从网站下载SSDT的bits,它将为你安装基本的IDE以使用w/SSDT。如果其他项目在2013年工作,可能没有必要。)新项目也有同样的问题。从文件|新建|项目开始,没有导入。这是没有对象还是在创建对象之后?您是否可以将对象导入到项目中,以查看它是否已生成?我仍然认为可能值得并排安装2012 SSDT位,看看它是如何工作的,或者它的行为是否不同。对我来说也是如此!仅供参考,我在一个数据库项目中遇到了错误,我将该项目设置为SQl Server 2012,而不是默认的2014年。这是我第一次使用数据工具,需要修复。这可能需要几个小时才能解决。谢谢你,这对我很管用too@DanCsharpster仅供参考:您可以从命令行运行SSTDSetup,因此可以通过让所有代理运行以下命令来自动修复和(在本例中)强制重新启动:
    \\myserver\share\SSDTSetup.exe/repair/silent/forcerestart
    。为此,您可以使用PowerShell的
    Invoke命令
    (或您的首选工具)。例如。注意:运行
    SSDTSetup.exe/?
    获取命令行选项的完整列表。对于那些担心直接从提供的链接随机下载.exe文件的人,您可以在Microsoft网站上找到下载:这正是我遇到的情况
      <DSP>Microsoft.Data.Tools.Schema.Sql.Sql110DatabaseSchemaProvider</DSP>