你应该如何从Azure中的SQL数据库脚本中获得DacPac版本



Azure SQL在部署数据库中的脚本上下文中运行时不会让您访问其他数据库,因此运行SELECT type_version FROM master.dbo.sysdac_instances只会导致错误:

此版本的SQL server不支持引用"master.dbo.sysdac_instances"中的数据库和/或服务器名称。

我正在尝试使用一个手动运行的部署脚本来利用该版本,但它需要在与已部署数据库的连接中运行,而Azure不允许它访问master。有没有其他方法可以获得DacPac版本?

除非在同一个数据库中,否则不能在查询中添加数据库名称。您的查询在master数据库中执行良好。

或者,您需要创建跨数据库连接,并创建一个外部表来查询master中的数据。

您可以参考此文档进行跨数据库查询。

最新更新