Visual studio 2013 VS2013数据库项目无法生成
我在VS2013(更新3)中创建了一个新的SQL Server数据库项目,并尝试进行构建,但失败了。我收到的唯一生成输出如下: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
------ 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数据工具解决了这个问题。以下是步骤
还要检查您使用的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>