2010-06-02 51 views
0

我有一個觀點,我正在嘗試爲其設置索引。視圖的選擇列之一執行具有varchar(250)返回值的用戶定義函數。但是,當我嘗試在該列上設置索引時,我看到nvarchar(4000)的大小。爲什麼會這樣,如果我繼續設置我的索引會導致問題?選擇函數值在索引上顯示nvarchar(4000)

回答

0

是否正在運行sp_refreshview 'YourViewName'解決該問題? (我認爲你需要改變視圖才能使用WITH SCHEMABINDING

0

我認爲你的主要建議是去掉標量udf。他們是一個可怕的表現拖累。 udf有沒有合法的商業原因?

將代碼從標量函數中取出並直接放入視圖中,看看是否可以緩解您的問題。

+0

這不是一個阻力。 UDF本身執行一些數據操作。我不想在一個視圖中的6個不同的位置,特別是近100行。 – 2010-06-02 21:03:32