【问题标题】:Create a DACPAC excluding Views创建不包括视图的 DACPAC
【发布时间】:2020-04-14 13:42:13
【问题描述】:

我需要备份一个数据库,但是它包含在开发视图中(例如dev.V_report)。当我尝试通过SSMS > Extract Data-tier Application 创建 DACPAC 文件时,这些视图导致报告以下错误:

Validation of the schema model for data package failed.
Error SQL71501: Error validating element [dev].[V_MasterFinanceReconciliationSummary]: View: [dev].[V_MasterFinanceReconciliationSummary] has an unresolved reference to object [dbo].[V_MasterFinanceFull].
Error SQL71501: Error validating element [dev].[V_MasterFinanceReconciliationSummary]: View: [dev].[V_MasterFinanceReconciliationSummary] has an unresolved reference to object [dbo].[V_MasterFinanceFull].[PasTransactionType].
… (etc)

每个有问题的视图都仅限于dev 架构,不能保证它们没有这些问题,我无法将这些问题移至其他数据库。我只需要备份表架构,虽然我可以在Extract Data-tier Application 中取消选择tables,但我不能对有问题的视图或整个dev 架构执行相同操作。 p>

我已尝试创建 BACPAC,因为它仍可用作备份,但我遇到了同样的问题。我尝试使用以下命令在命令行中使用 SqlPackage.exe 备份数据库(使用 Azure AD 登录,此处需要):

sqlpackage.exe /TargetFile:"C:\temp\DACPAC\output_target.dacpac" /Action:Extract /SourceServerName:<server> /SourceDatabaseName:<database> /ua /p:VerifyExtraction=False

但这只是给我以下错误,我找不到相关信息:

*** An unexpected failure occurred: Exception has been thrown by the target of an invocation..

任何有关备份的建议将不胜感激。

【问题讨论】:

  • 您可以使用deployment contributor 排除特定对象或架构。这需要一些额外的代码来编译和可用。

标签: sql-server azure-sql-database ssms database-backups


【解决方案1】:

请考虑创建数据库的副本。使用脚本删除新创建的数据库上的所有视图。然后将数据库导出为新创建的数据库,并将所有视图作为 bacpac 删除。

【讨论】:

    猜你喜欢
    • 2013-09-06
    • 1970-01-01
    • 2015-06-07
    • 1970-01-01
    • 2019-10-11
    • 1970-01-01
    • 1970-01-01
    • 2010-09-10
    • 1970-01-01
    相关资源
    最近更新 更多