我有一个.dacpac文件,MSBuild正在调用该文件,并将其发布到QA数据库进行测试。此发布失败,我从他们那里找回来的错误是一条通用的“发生错误”消息。我希望我可以从dacpac生成部署脚本,并逐步浏览该脚本以查看问题发生的位置,并希望教他们如何执行此操作。
有什么方法可以将dacpac指向特定的数据库,并使其生成用于更新数据库的sql,而无需实际发布到数据库?
您可以使用SqlPackage.exe。在您的计算机上的名称类似于以下名称的目录中查找它:
C:\ Program Files(x86)\ Microsoft SQL Server \ 130 \ DAC \ bin
需要注意的是它可以在中找到110,120或130文件夹。
110
120
130
如果还没有SqlPackage.exe,可以从这里下载:https : //www.microsoft.com/zh- cn/download/details.aspx?id=53013
SqlPackage.exe
如果下载了它,请 确保 在下载页面 的“系统要求”部分 中查找依赖项SqlSysClrTypes.msi和SqlDom.msi,这些依赖项也必须安装。
SqlSysClrTypes.msi
SqlDom.msi
用法示例:
SqlPackage.exe / a:script /SourceFile:C:\temp\mydb.dacpac / TargetConnectionString:“数据源= myserver;初始目录= mydb;集成安全性= true” / OutputPath:C:\ temp