sp_recompile (Transact-SQL)
Nedenleri saklı yordamları ve tetikleyiciler olarak çalışacak sonraki saat çekirdekler.Bunu bir sonraki saat oluşturulacak yeni bir plan zorlamak yordam önbelleği mevcut planın bırakarak yapar yordam veya tetikleyiciyi çalıştırılır.İçinde bir SQL Server Profiler koleksiyon, olay SP:CacheInsert olay yerine SP: RECOMPILE kaydediliyor.
Sözdizimi
sp_recompile [ @objname = ] 'object'
Bağımsız değişkenler
- [ @objname= ] 'object'
saklı yordam, tetikleyici, tabloveya Görünüm geçerli veritabanında nitelenmiş ya da nitelenmemiş adı.objectİş nvarchar(776), ile hiçbir varsayılan.object saklı yordam adı veya tetikleyici, saklı yordam veya tetikleyiciyi olacaktır, çalışma. olduğunu İleri saat çekirdeklerobject Olan bir tablo veya görünüm, tüm saklı yordamlar veya tetikleyiciler, tablo veya Görünüm başvuru olacaktır adını çekirdekler sonraki saat emin oldukları çalışma.
Dönüş Kodu Değerleri
0 (başarılı) veya sıfır olmayan bir sayı (hata)
Açıklamalar
sp_recompilebir nesneyi yalnızca geçerli veritabanında arar.
Yalnızca derlenmiş, saklı yordamları ve Tetikleyicileri tarafından kullanılan sorgular hale getirilmiştir.Dizin veya istatistikleri etkileyen diğer değişiklikler veritabanına yapılan gibi derlenmiş saklı yordamları ve Tetikleyicileri verimlilik kaybına uğrayabilir.Saklı yordamları ve Tetikleyicileri tablodavranan derlenmesine tarafından sorguları reoptimize.
Not
SQL ServerBunu yapmak için yararlı olduğunda otomatik olarak saklı yordamları ve Tetikleyicileri yeniden derler.
İzinler
Belirtilen nesne üzerinde alter izni gerektirir.
Örnekler
Aşağıdaki örnek saklı yordamları ve tetikleyicileri harekete geçirecek neden içinCustomertablo çekirdekler çalıştırılacaklarını sonraki saat .
USE AdventureWorks2008R2;
GO
EXEC sp_recompile N'Sales.Customer';
GO