Microsoft, Microsoft SQL Server 2008 Microsoft SQL Server 2008 R2 Service Pack 1 düzeltmeleri indirilebilir bir dosya olarak dağıtır. Düzeltmeler birikimli olduğu için, her yeni sürüm önceki SQL Server 2008 Service Pack 1 veya SQL Server 2008 R2 düzeltmesi sürümüyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir.
Belirtiler
SQL Server 2008 veya SQL Server 2008 R2'de bir SELECT Select UNıON All deyimini çalıştırdığınızda, select yan tümcesinin hedef tablosu olarak Selectyan tümcesinin kaynak tablosu kullanılıyorsa ifadenin sonucu yanlış olabilir. Örneğin, dört tablo oluşturmak için aşağıdaki ifadeleri çalıştırırsınız:
CREATE TABLE [TabA] (M VARCHAR(20), W VARCHAR(20)) CREATE TABLE [TabB] (M VARCHAR(20), W VARCHAR(20), R VARCHAR(20)) CREATE TABLE [TabC] (P VARCHAR(6), M CHAR(20), A NUMERIC(13)) CREATE TABLE [TabD] (P VARCHAR(6), W VARCHAR(20), M VARCHAR(20), D NUMERIC(13), E DATETIME, F DATETIME) Taba, Tabbve TABD tablolarına bazı değerler eklerseniz, AŞAĞıDAKI Ekle 'yi seçerek de UNION ALL deyimini seçersiniz :
INSERT INTO [TabC] (P, M, A) SELECT T1.P,T1.M,T1.D / SUM(1) OVER(PARTITION BY P) FROM [TabD] T1 INNER JOIN [TabA] T2 ON (T1.M = T2.M AND T1.W = T2.W) WHERE NOT EXISTS (SELECT * FROM [TabC] E1 WHERE T1.P = E1.P) UNION ALL SELECT T1.P,T2.M,T1.D / SUM(1) OVER(PARTITION BY P) FROM [TabD] T1 INNER JOIN [TabB] T2 ON (T1.M = T2.R AND T1.W = T2.W) WHERE NOT EXISTS (SELECT * FROM [TabC] E1 WHERE T1.P = E1.P) GOBu senaryoda, yanlış sonuçlar alırsınız ve bazı kayıtlar TABC tablosuna yanlış olarak eklenmiyor.
Çözüm
Toplu güncelleştirme bilgileri
SQL Server 2008 Service Pack 3
Bu sorunla ilgili düzeltme ilk olarak SQL Server 2008 Service Pack 3 için toplu güncelleştirme 1 ' de yayımlanmıştır. 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ını tıklatın:
2617146 SQL Server 2008 Service Pack 3 için toplu güncelleştirme paketi 1Not Derlemeler birikimli olduğundan, her yeni düzeltme sürümü önceki SQL Server 2008 düzeltmesi sürümüyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Microsoft, bu düzeltmeyi içeren en son düzeltmeyi uygulamanızı ö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:
2629969 SQL Server 2008 Service Pack 3 sonrasında yayınlanan SQL Server 2008 derlemeleri Microsoft SQL Server 2008 düzeltmeleri belirli SQL Server hizmet paketleri için oluşturulur. SQL Server 2008 Service Pack 3 düzeltmesini SQL Server Service Pack 3 kurulumuna 2008 uygulamalısınız. Varsayılan olarak, SQL Server hizmet paketinde sağlanan tüm düzeltme, bir sonraki SQL Server hizmet paketine dahil edilmiştir.
SQL Server 2008 R2
Bu sorunla ilgili düzeltme ilk olarak toplu güncelleştirme 9 ' da yayımlanmıştır. SQL Server 2008 R2 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ını tıklatın:
2567713 SQL Server 2008 R2 için toplu güncelleştirme paketi 9 Not Derlemeler birikimli olduğundan, her yeni düzeltme sürümü önceki SQL Server 2008 R2 düzeltmesi sürümüyle birlikte gelen 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üşünebilirsiniz. Daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
981356 SQL Server 2008 R2 sonrasında yayımlanan SQL Server 2008 R2 derlemeleri
SQL Server 2008 R2 Service Pack 1
Bu sorunla ilgili düzeltme ilk olarak SQL Server 2008 R2 Service Pack 1 için toplu güncelleştirme 2 ' de yayımlanmıştır. 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ını tıklatın:
2567714 SQL Server 2008 R2 Service Pack 1 için toplu güncelleştirme paketi 2Not Derlemeler birikimli olduğundan, her yeni düzeltme sürümü önceki SQL Server 2008 R2 düzeltmesi sürümüyle birlikte gelen 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üşünebilirsiniz. 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 Service Pack 1 ' den sonra yayınlanan SQL Server 2008 R2 derlemeleri
SQL Server 2008 Service Pack 2
Bu sorunla ilgili düzeltme ilk olarak SQL Server 2008 Service Pack 2 için toplu güncelleştirme 5 ' te yayımlanmıştır. 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ını tıklatın:
2555408 SQL Server 2008 Service Pack 2 için toplu güncelleştirme paketi 5Not Derlemeler birikimli olduğundan, her yeni düzeltme sürümü önceki SQL Server 2008 düzeltmesi sürümüyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Microsoft, bu düzeltmeyi içeren en son düzeltmeyi uygulamanızı ö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:
2402659 SQL Server 2008 Service Pack 2 ' den sonra yayınlanan SQL Server 2008 derlemeleri Microsoft SQL Server 2008 düzeltmeleri belirli SQL Server hizmet paketleri için oluşturulur. SQL Server 2008 Service Pack 2 düzeltmesini SQL Server Service Pack 2 kurulumuna 2008 uygulamalısınız. Varsayılan olarak, SQL Server hizmet paketinde sağlanan tüm düzeltme, bir sonraki SQL Server hizmet paketine dahil edilmiştir.
SQL Server 2008 Service Pack 1 toplu güncelleştirme 14
Bu sorunla ilgili düzeltme ilk olarak SQL Server 2008 Service Pack 1 için toplu güncelleştirme 14 ' te yayımlanmıştır. 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ını tıklatın:
2527187 SQL Server 2008 Service Pack 1 için toplu güncelleştirme paketi 14Not Derlemeler birikimli olduğundan, her yeni düzeltme sürümü önceki SQL Server 2008 düzeltmesi sürümüyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Microsoft, bu düzeltmeyi içeren en son düzeltmeyi uygulamanızı ö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:
970365 SQL Server 2008 Service Pack 1 ' den sonra yayınlanan SQL Server 2008 derlemeleri Microsoft SQL Server 2008 düzeltmeleri belirli SQL Server hizmet paketleri için oluşturulur. SQL Server 2008 Service Pack 1 düzeltmesini SQL Server Service Pack 1 kurulumuna 2008 uygulamalısınız. Varsayılan olarak, SQL Server hizmet paketinde sağlanan tüm düzeltme, bir sonraki SQL Server hizmet paketine dahil edilmiştir.
Durum
Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.