Microsoft, Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) veya Microsoft SQL Server 2012 düzeltmelerini indirilebilir tek bir dosyada dağıtır. Düzeltmeler birikimli olduğu için, her yeni sürüm bir önceki SQL ServerSQL Server 2008 R2 Service Pack 1 (SP1) veya Microsoft SQL ServerSQL Server 2012 update release ile birlikte gelen tüm düzeltmeleri ve tüm güvenlik güncelleştirmelerini içerir.
Belirtiler
Aşağıdaki senaryoyu ele alalım:
- Microsoft SQL ServerSQL Server 2005'ten Microsoft SQL ServerSQL Server 2008'e veya Microsoft SQL ServerSQL Server 2008 R2'ye veya Microsoft SQL ServerSQL Server 2012'ye yükseltiyorsunuz.
- sp_cursoropen saklı yordamını kullanan bir sorgu çalıştırır ve ardından tablonun ilk birkaç satırını getirmek için rowcount parametresini belirtirsiniz.
Bu senaryoda, aynı sorguyu SQL ServerSQL Server 2005 sürümünde çalıştırdığınız duruma göre performans daha yavaş olabilir.
Neden
Bu sorun, Sorgu İyileştiricisi dinamik imleç planı yerine statik imleç planı kullandığı için oluşur. Statik imleç planı için, SQL Server tüm satırları alır ve bunları imleç çalışma tablosuna ekler. Ancak, dinamik imleç planında, SQL Server yalnızca gerekli satırları getirir.
Çözüm
Toplu güncelleştirme bilgileri
SQL Server 2012
Bu soruna yönelik düzeltme ilk olarak SQL Server 2012 için Toplu Güncelleştirme 1'de yayımlandı. Bu toplu güncelleştirme paketi hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
2679368 SQL Server 2012 için Toplu Güncelleştirme Paketi 1Not: Derlemeler birikimli olduğundan, her yeni düzeltme önceki SQL Server 2012 düzeltme sürümüne dahil edilen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Microsoft, bu düzeltmeyi içeren en son düzeltme sürümünü uygulamayı düşünmenizi önerir. Daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
2692828 SQL Server 2012 yayımlandıktan sonra yayımlanan SQL Server 2012 derlemeleri SQL Server 2012 yüklemesine bir SQL Server 2012 düzeltmesi uygulamalısınız.
SQL Server 2008 R2 SP1 için toplu güncelleştirme paketi 5
Bu düzeltmeyi uyguladıktan sonra izleme bayrağı 4199'u etkinleştirin.
Bu soruna yönelik düzeltme ilk olarak Toplu Güncelleştirme 5'te yayınlandı. SQL Server 2008 R2 SP1 için bu toplu güncelleştirme paketini edinme hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
2659694 SQL Server 2008 R2 SP1 için Toplu Güncelleştirme Paketi 5Not: Derlemeler birikimli olduğundan, her yeni düzeltme önceki SQL Server 2008 R2 SP1 düzeltme sürümüne eklenmiş olan tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Bu düzeltmeyi içeren en son düzeltme sürümünü uygulamayı düşünmenizi öneririz. Daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
2567616 SQL Server 2008 R2 SP1'den sonra yayımlanan SQL Server 2008 R2 derlemeleri
Geçici çözüm
Bu soruna geçici bir çözüm olarak, sorguya FAST sorgu ipucunu ekleyin.
Daha Fazla Bilgi
Sorgu ipuçlarını kullanma hakkında daha fazla bilgi için aşağıdaki MSDN web sitesini ziyaret edin:
Sorgu ipuçlarını kullanma hakkında genel bilgiler 4199 izleme bayrağı hakkında daha fazla bilgi için aşağıdaki web sitesini ziyaret edin:
İzleme bayrağı 4199 hakkında genel bilgiler
Durum
Microsoft bunun, "Şunlar için geçerlidir" bölümünde listelenen Microsoft ürünlerinde sorun olduğunu doğrulamıştır.