2010-11-26 71 views
0

實際上,延遲名稱解析是關於存儲過程中的表。但我注意到有時我可以創建UDF,它指的是不存在的UDF,在其他情況下,我不能。當不存在UDF名稱允許時以及不存在時,我沒有發現任何提及。UDF中的延遲名稱解析

它不依賴於UDF類型(標量/表值)。看起來如果UDF返回XML,它不允許引用不存在的UDF。

所以我很困惑一點。有沒有規定?

P.S.這些視圖沒有被綁定到架構上,沒有SCHEMABINDING

+1

我當然可以創建UDF引用不存在的表和UDF,它們返回XML,沒有警告,所以我認爲那個位是一個紅色的鯡魚。你可以嘗試和張貼一些樣品(最好是小)的工作和一些不工作。 – 2010-11-26 09:29:00

回答

2

延遲名稱解析不起作用的明顯原因是該函數是使用「WITH SCHEMABINDING」選項創建的。由於此選項會導致在系統表中創建條目,因此無法刪除該功能所依賴的對象,如果依賴對象不存在,則該條目將失敗。

+0

+1。當然,這讓ALTER的生活「變得複雜」,據稱這是通常的抱怨。我們總是使用它 – gbn 2011-01-22 12:50:42