sp_refreshview İle View Metadatalarını Güncellemek
SQL Server’da tüm tabloyu “select * ” listelediğimiz view’lerde kullanmış olduğumuz tablolara yeni kolon veya kolonlar eklendiğinde otomatik olarak “select * kullanımda bile” view’e eklenmez. View’e tabloya yeni bir kolon eklendiği bildirilmelidir.
Kullanmış olduğumuz View’e yeni kolonları eklemek için;
- View’i Alter edebilir,
- View’i drop-create edebilir,
- sp_refreshview saklı yordamı ile metadata bilgilerini güncelleyebilirsiniz.
Bu üç yöntem arasında metadata bilgilerini sp_refreshview sistem saklı yordamını kullanmak en sağlıklısı olacaktır. Drop-create yönteminde view üzerinde yetkilendirmeler varsa silinecek ve tekrar yetki tanımlamanız gerekecektir.
Aşağıda tüm tabloyu “select * ” olarak sorgulayan bir view oluşturdum ve o tabloya yeni bir kolon daha ekledim. sp_refreshview saklı yordamını ile view metadatasını güncelleyip yeni eklenen kolonun view’de de geldiğini görmüş olduk.