You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

导入SQL Server2017生成的bacpac到Azure SQL时遇平台服务错误的解决方法

解决SQL Server 2017生成的Bacpac导入Azure SQL的错误

错误原因

SSMS 2016内置的数据层应用组件(DAC)仅支持SQL Server 2016及更早版本的数据库对象(对应Sql140DatabaseSchemaProvider),而你要导入的bacpac由SQL Server 2017生成,需要兼容SQL Server 2017的DAC组件(对应Sql150DatabaseSchemaProvider),因此出现版本不匹配的错误。

可行解决方案

方案1:安装SQLPackage工具(推荐)

在Windows Server 2012R2上安装支持SQL Server 2017的SQLPackage版本(15.x及以上),通过命令行完成导入:

  • 安装完成后,执行以下命令(替换占位符为你的实际信息):
SqlPackage.exe /Action:Import /SourceFile:"C:\本地bacpac文件路径\your-db.bacpac" /TargetConnectionString:"Server=tcp:你的Azure SQL服务器名.database.windows.net,1433;Initial Catalog=目标数据库名;User ID=用户名;Password=密码;Encrypt=True;"

方案2:升级SSMS到最新版本

卸载SSMS 2016,安装最新版SSMS(如19.x系列)。新版SSMS内置了兼容SQL Server 2017及更高版本的DAC组件,升级后可直接使用「导入数据层应用」功能完成导入操作。

方案3:通过Azure门户导入

  • 登录Azure门户,找到目标Azure SQL服务器,点击「创建数据库」,选择「从备份导入」选项
  • 将本地bacpac文件上传到Azure存储账户的容器中(需提前创建存储账户和容器)
  • 按照门户指引完成数据库导入配置,等待导入完成

内容的提问来源于stack exchange,提问作者JJK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 09:57:44