我创建了一个访问[INFORMATION_SCHEMA].[TABLES]
视图的UDF:
CREATE FUNCTION [dbo].[CountTables]
(
@name sysname
)
RETURNS INT
AS
BEGIN
RETURN
(
SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = @name
);
END
在Visual Studio中,视图的架构和名称都标有警告:
SQL71502:函数:[dbo]。[CountTables]对象[INFORMATION_SCHEMA]有一个未解析的引用。[TABLES]。
我仍然可以毫无问题地发布数据库项目,UDF确实可以正常运行。 IntelliSense为我填充了视图的名称,因此它似乎没有问题。
我还尝试将实现更改为使用sys.objects
而不是此视图,但我也对此视图发出了相同的警告。
如何解决此警告?
答案 0 :(得分:151)
向master
添加数据库引用:
请注意,VS可能需要一段时间才能更新。
答案 1 :(得分:3)
在我们的项目中,我们已经有了对master的引用,但是我们遇到了这个问题。这是我们得到的错误:
SQL71502: Procedure: [Schema].[StoredProc1] has an unresolved reference to object [Schema].[Table1].[Property1].
要解决表sql文件中的引用错误, 右键单击属性并验证BuildSettings是否设置为Build。
更改它构建修复它。
答案 2 :(得分:2)
false
,用于您尝试运行的构建配置。
<TreatTSqlWarningsAsErrors>false</TreatTSqlWarningsAsErrors>
这样您就不需要添加对项目的引用。