SQL71561:视图包含对Is_Distributed

时间:2019-05-03 13:39:14

标签: visual-studio-2017 sql-server-2016

我在VS 2017中创建了一个全新的数据库项目。我已将目标平台设置为SQL Server 2016,并添加了master和msdb作为引用。

我遇到的问题是,我有一个视图引用了sys.availability_groups和is_distributed列上的过滤器。引发此错误:

  

SQL71561:查看:[dbo]。[VUHL_vw_AGInfo]包含未解决的   引用对象。该对象不存在或   引用不明确,因为它可能引用以下任何内容   对象:[master]。[sys]。[availability_groups]。[AG] :: [is_distributed],   [master]。[sys]。[availability_groups]。[is_distributed],   [master]。[sys]。[availability_replicas]。[AG] :: [is_distributed],   [master]。[sys]。[dm_hadr_availability_group_states]。[AG] :: [is_distributed],   [master]。[sys]。[dm_hadr_availability_replica_states]。[AG] :: [is_distributed]   要么   [master]。[sys]。[dm_hadr_database_replica_states]。[AG] :: [is_distributed]。

我知道该列存在,并且我知道它在2016年之前就不存在了,所以我问了this question。但是,即使采用这种解决方法,它也无法识别该列。

是否有一种方法可以使数据库项目识别列,或告诉它不关心该列?

1 个答案:

答案 0 :(得分:0)

我不确定现在要如何使此工作100%进行,但是现在可以了。

从本质上讲,我关闭并重新打开了VS,发现以某种方式两次将master和msdb添加为引用。我删除了所有这些引用,保存并关闭了VS。然后,我重新打开该项目,添加了引用,现在它可以正常工作了。