KB3151176 - DÜZELTME: SQL Server 2014'te skaler kullanıcı tanımlı işlev içeren bir sorgu koşulu için satır sayısı hafife alınmış

Uygulandığı Öğe
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Belirtiler

Aşağıdaki senaryoyu ele alalım:

  • Parametreli skaler kullanıcı tanımlı işlev içeren bir koşul içeren bir sorgunuz var.
  • Bu kullanıcı tanımlı işlevle aynı sonucu verebilecek birden çok giriş parametresi değeri kombinasyonu vardır.
  • SQL ServerSQL Server, veritabanı uyumluluk modunun 120 olarak ayarlandığı Yeni Kardinalite Tahmin Aracı'nı kullanır.

Bu senaryoda, sorguyu çalıştırdığınızda, sorgu planında kullanıcı tanımlı işlevi içeren koşul için yanlış tahmin edilen satır sayısı nedeniyle düşük sorgu performansıyla karşılaşırsınız.

Çözüm

Bu sorun ilk olarak, SQL ServerSQL Server için aşağıdaki toplu güncelleştirmede düzeltildi:

SQL Server 2014 Service Pack 1 için Toplu Güncelleştirme 6
        
Bu toplu güncelleştirme paketini yükledikten sonra 4199 izleme bayrağını etkinleştirmeniz gerekir. Bunu yapmak için -T4199 başlangıç parametresini ekleyebilirsiniz. Veya belirli bir oturum için dbcc traceon(4199) deyimini kullanabilirsiniz.

SQL Server toplu güncelleştirmeleri hakkında

SQL Server için her yeni toplu güncelleştirme, önceki toplu güncelleştirmeye dahil edilen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. SQL Server için en son toplu güncelleştirmelere göz atın:

SQL Server 2014 için en son toplu güncelleştirme
      

Durum

Microsoft bunun, "Şunlar için geçerlidir" bölümünde listelenen Microsoft ürünlerinde sorun olduğunu doğrulamıştır.

Başvurular

Microsoft'un yazılım güncelleştirmelerini tanımlamak için kullandığı terminoloji hakkında bilgi edinin.