带有 extractAllTableData 标志的 dacpac 和 bacpac 有什么区别?

What is the difference between a dacpac with extractAllTableData flag and a bacpac?

我想在 SSMS 中备份数据库并将其还原到 VM 上的不同服务器。我已将 dbs 导出到 bacpacs,但一直遇到障碍,例如用户具有 windows 身份验证或错误验证元素。

我最近注意到将 extraAllTableData 设置为 true 的 dacpac 可能会完成类似的事情。我知道 bacpacs 是为 Azure Sql 服务器量身定制的,但两者之间还有其他区别吗?

DACPAC 仅包含模式信息。 BACPAC 包含模式和数据。它还包含安全性。

如果您使用 ExtractAllTableData 选项,除了架构之外,还会提取用户数据。但是,仍然没有提取权限。

/p: ExtractAllTableData=(BOOLEAN) Indicates whether data from all user tables is extracted. If 'true', data from all user tables is extracted, and you cannot specify individual user tables for extracting data. If 'false', specify one or more user tables to extract data from.