如何使用Visual Studio将Azure SQL备份(.bacpac)导入LocalDB?

Bor*_*ard 26 sql-server azure visual-studio bacpac

我想这将是一个相当主流的场景,但我无法找到如何导入导出Azure的SQL数据库(.bacpac)到我的LocalDB的Visual Studio 2013.我错过了什么或Visual Studio缺少什么?

(注意:有一个解决方案,当有一个SQL Server管理工作室,但我没有它,如果可能的话,不想安装它.)

Sim*_*n W 30

如果您的计算机上有此文件夹,C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin则可以运行此命令来恢复bacpac文件:

.\SqlPackage.exe /Action:Import /SourceFile:"c:\temp\your.bacpac" /TargetConnectionString:"Data Source=(localdb)\v11.0;Initial Catalog=devdb; Integrated Security=true;"
Run Code Online (Sandbox Code Playgroud)

如果缺少该文件夹,则需要从Microsoft下载该工具.

  • 如果您完成了Visual Studio 2015的完整安装,或者在安装它时只包含此工具,那么您将在此路径中找到SqlPackage.exe C:\ Program Files(x86)\ Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\120 (5认同)
  • 我无法通过此消息:***导入数据库时​​出错:无法导入包.无法连接到目标服务器. (4认同)
  • 重要提示:确保您拥有正确的工具版本.我最初在`\ Program Files(x86)\ Microsoft SQL Server\110\DAC\bin\SqlPackage.exe`中只有SqlPackage,无法为SQL Server 2014 LocalDB安装.一旦我安装了新版本`(120)`它就可以了:见http://stackoverflow.com/questions/23375748/publish-dacpac-to-sql-server-2014-using-sqlpackage-exe (4认同)
  • 对于 VS2017,我可以在 C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\140 下找到它 (3认同)
  • 在VS2015中,我在`C:\ Program Files(x86)\ Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\130`下找到它. (2认同)

teo*_*omi 11

对我来说,使用的正确命令是:

.\SqlPackage.exe /Action:Import /SourceFile:"c:\temp\your.bacpac" /TargetConnectionString:"Data Source=(localdb)\mssqllocaldb;Initial Catalog=DBNAME;Integrated Security=true;"

否则我会收到一个错误: *** Error importing database:Could not import package. Unable to connect to master or target server 'DBNAME'. You must have a user with the same password in master or target server 'DBNAME'.

使用VS2015,在anjdreas指定的位置:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\SQLDB\DAC\130