ฉันได้สร้าง UDF ที่เข้าถึง[INFORMATION_SCHEMA].[TABLES]
มุมมอง:
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
แทนมุมมองนี้ แต่ฉันก็ได้รับคำเตือนแบบเดียวกันสำหรับมุมมองนี้เช่นกัน
ฉันจะแก้ไขคำเตือนนี้ได้อย่างไร