首页 > 解决方案 > 无法使用视图定义中具有表的完全限定名称的视图编译 SSDT 数据库项目

问题描述

我们有一个 SQL 2019 数据库,其中所有表名在以数据库名称开头的视图中都是完全限定的。我们没有选择避免完全限定的引用,因为视图定义是自动生成的(否则我根本不会完全限定它们)。当通过引用与视图相同的数据库中的表来定义视图时,SSDT 项目抱怨它有一个未解析的引用。

Visual Studio 不允许添加对其自身的数据库引用。我可以编译它的唯一方法是创建同一数据库的 DACPAC,然后将其添加为引用以及删除数据库变量 ($Name)。

有没有其他方法可以在视图中提供完全限定的表名,而无需在 SSDT 项目中创建 DACPAC?

标签: sql-server-data-toolsssdt-2019

解决方案


我知道的唯一方法是将视图代码从项目中取出并在部署后脚本中处理。这是设计使然,因为数据库名称可能不是原始代码中定义的名称。


推荐阅读