KB2897282 - DÜZELTME: ABD dışındaki bir yerel bilgisayarda SSAS 2012 veya SSAS 2014'te DateAdd veya Day işlevini çalıştırdığınızda yanlış tarih biçimi döndürülür

Uygulandığı Öğe
SQL Server 2012 Analysis Services

Bu düzeltme Microsoft SQL ServerSQL Server 2014 Analysis Services (SSAS 2014) için de geçerlidir.

Belirtiler

ABD dışındaki bir bilgisayarda Microsoft SQL Server 2012 Analysis Services (SSAS 2012) veya SQL Server 2014 Analysis Services (SSAS 2014) yüklü olduğunu ve SQL Server 2012 veya SSAS 2014 yerel ayarının ABD yerel ayarı olduğunu varsayalım. DateAdd veya Day işlevini çalıştırdığınızda, işlevin döndürülen değeri tanımladığınız biçim yerine US-locale biçimi olur.

Örneğin, bilgisayardaki işletim sisteminin yerel ayarı İngiltere yerel ayarı (DMY), SQL Server 2012 veya SSAS 2014 yerel ayarı ise ABD yerel ayarıdır (MDY). DateAdd işlevini DateAdd("d", 0, "12/01/1959 00:00:00") kullanarak çalıştırırsanız, Birleşik Krallık ayarında parametre gg/aa/yy olarak kabul edilmelidir. Doğru sonuç "12 Ocak 1959" yerine yanlış sonuç 01 Aralık 1959'dur.

Gün işlevini Gün("12/01/1959 00:00:00") kullanarak çalıştırırsanız, Birleşik Krallık ayarında parametre gg/aa/yy olarak kabul edilmelidir. Yanlış sonuç, doğru sonuç günü "12" yerine "01" günüdür.

Çözüm

Sorun ilk olarak aşağıdaki toplu SQL Server güncelleştirmesinde düzeltilmiştir.

SQL Server 2014 için Toplu Güncelleştirme 1 /en-us/help/2931693

SQL Server 2012 SP1 için Toplu Güncelleştirme 7 /en-us/help/2894115

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:

      

Durum

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