无法导入SQL Azure V12 BACPAC:“0”;键入Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider无效";

无法导入SQL Azure V12 BACPAC:“0”;键入Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider无效";,azure,azure-sql-database,Azure,Azure Sql Database,我正在尝试将导出的BACPAC从SQL Azure(v12)数据库导入本地SQL Server 2012实例,但我不断收到以下错误。我已经尝试安装从链接的DAC和SSDT更新,但没有帮助 我怎样才能解决这个问题 TITLE: Microsoft SQL Server Management Studio ------------------------------ Count not load schema model from package. (Microsoft.SqlServer.Dac

我正在尝试将导出的BACPAC从SQL Azure(v12)数据库导入本地SQL Server 2012实例,但我不断收到以下错误。我已经尝试安装从链接的DAC和SSDT更新,但没有帮助

我怎样才能解决这个问题

TITLE: Microsoft SQL Server Management Studio
------------------------------

Count not load schema model from package. (Microsoft.SqlServer.Dac)

------------------------------
ADDITIONAL INFORMATION:

Internal Error. The database platform service with type Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider is not valid. You must make sure the service is loaded, or you must provide the full type name of a valid database platform service. (Microsoft.Data.Tools.Schema.Sql)

------------------------------
BUTTONS:

OK
------------------------------

更新:新的是导入Azure SQL DB的最佳方式。它支持所有最新的Azure SQL DB功能和验证。此外,它还有一个独立的web安装程序,当新功能可用时,它会每月自动更新。鉴于下面的评论提到了安装CU更新的困难,这将是一个更简单、更快的问题解决方案

原始答案: 如果使用SQL Server Management Studio执行导入,则必须安装SSMS 2014 CU5或CU6。有关安装CU6的信息可用。问题中显示的错误表示您正在使用较旧版本的SSMS

**更新:** 对于马丁下面的回答,我想澄清两件事

  • SSMS for SQL Server 2014是唯一一个完全支持新Azure SQL DB v12功能的SSMS版本,特别是针对该目标的导入/导出。这是因为v12具有(几乎)与SQL Server 2014相同的功能,而旧版本的工具不支持这一点。请注意,SSMS 2014与SQL Server 2005及更高版本完全向后兼容

  • 有一个单独的临时问题导致升级了Azure SQL DB v12的数据库出现问题。此问题已解决,有关解决此问题的信息,请参见本页第C3节。总之,如果您导出的bacpac由于此问题而无法导入,则可以从下载最新的DacFramework.msi以在SSMS中修复此问题


  • 完全披露:我在SQL Server工具团队工作。

    我也有同样的问题

    按建议安装有助于避免第一个bug,但只会陷入下一个bug

    与本主题相关:

    这是一个微软尚未修复或解决的bug

    编辑:恢复需要SQL Management Studio 2014(2012不起作用)

    如果有,我想线程会被更新

    编辑:在上面提到的方法中,您现在可以找到一个解决方法:您需要创建V12数据库的副本。此副本可以在本地sql server 2014上导出和重新导入


    仅更新工具没有帮助。

    要修复[sys].[script\u deployment\u databases]从导出的V12数据库导入的错误,您必须安装:

  • (必须同时安装x64和x86版本)

  • 编辑:不需要CU13,只需先尝试第二个链接

    安装以下组件,它将正常工作!
    1) 您是否已安装SQL Server Management Studio 2014的累积更新5。

    2) Microsoft SQL Server数据层应用程序框架(2015年2月)(必须同时安装x64和x86版本)

    我使用的是11.0.2100.60版,也有同样的问题。安装。在那之后一切都很好。

    我从SQL Azure(v12)备份dataabse时遇到了同样的问题

    我已安装(为了正常工作,您需要同时安装x64和x86版本)。 首先,我已经安装了x64版本,并试图恢复数据库-但它没有工作。在此之后,我安装了x86版本,可以成功地恢复数据库

    我的SQL Server版本:Microsoft SQL Server 2014-12.0.2269.0(X64)。操作系统:Windows10x64版本10240


    Tnanks.

    安装最新的SQL Server Management Studio 2016预览版后,从Azure DB进行BacPac还原失败。解决方案是为本地SQL DB实例设置“包含的数据库身份验证”=1。阅读有关解决方案的信息或在本地实例上运行此脚本:

    使用主机 去 重新配置 去
    sp_configure'CONTAINED DATABASE AUTHENTICATION',1

    我使用了错误的
    SqlPackage.exe
    路径

    不起作用:

    C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\SqlPackage.exe
    
    作品:

    C:\Program Files (x86)\Microsoft SQL Server\130\DAC\bin\SqlPackage.exe
    C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\130\SqlPackage.exe
    

    嗨,马丁,我已经更新了我的回复,希望能涵盖你的问题。如果有什么我没有涵盖的,请告诉我,我会进一步更新。嗨@Kevincunne,谢谢你的回答!我已经更新了DAC,创建了Azure V12数据库的新备份,并尝试导入它。不幸的是,我仍然得到和以前一样的错误。错误消息太长,此处无法显示。错误代码为:警告SQL72012、错误SQL72014、错误SQL72045Martin,如果问题与创建类型[sys].[script_deployment_databases]有关,则应通过安装最新的Dac更新并通过SSMS 2014运行导入来修复。您还应该能够使用门户中的导入/导出服务进行导入。如果您在更新Dac后遇到这种情况,请联系“计划并准备升级”页面中提到的支持人员,他们可以通过正确的渠道将其发送。在使这些“修补程序”更可用方面还有一些工作要做。我真不敢相信,居然有人给我发了一封电子邮件,让我像18世纪的法国农民一样下载修补程序。使用SQL Server 2014的SSMS对我来说很有效。当尝试使用与2012捆绑的SSMS时,我在尝试从SQL Azure导入BACPAC文件时不断收到错误,例如
    警告SQL72012:目标中存在对象[PRIMARY]。
    。我无法安装CU6。除了
    之外没有其他信息此计算机上没有可更新的SQL Server实例或共享功能。
    可能是最新的?我不知道,它没有告诉我。为什么我的SSMS安装不可选择作为通过CU6安装程序修改的功能?我看到实例和两个框,但它们不可拾取。其中一个是MSSQLServer正如下面提到的,我的问题是我需要同时安装x86和x64版本的DacFramework.msi@茹