Microsoft distribueert Microsoft SQL Server 2008 of Microsoft SQL Server 2008 R2 met oplossingen als één downloadbaar bestand. Aangezien de fixes cumulatief zijn, bevat elke nieuwe versie alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige versie van SQL Server 2008 of SQL Server 2008 R2.
Symptomen
Wanneer u een complexe bijwerkquery uitvoert waarbij de operator join wordt gebruikt in een programma voor uitvoering in Microsoft sql server 2008 of in Microsoft sql server 2008 R2, worden mogelijk onjuiste resultaten weergegeven. Opmerking De bijwerkquery kan subquery's, statistische functies en de DISTINCT -component bevatten. Als u dezelfde query uitvoert in Microsoft SQL Server 2008 of in Microsoft SQL Server 2008 R2 parallel data warehouse, wordt mogelijk een andere set onjuiste resultaten weergegeven. Wanneer u de volgende code uitvoert, ziet u bijvoorbeeld onjuiste resultaten:
UPDATE RB SET rb1 = (SELECT AVG(DISTINCT T2_1.C1) AS C1 FROM (SELECT DISTINCT T3_1.C3 AS C1, T3_1.C5 AS C2 FROM (SELECT T5_1.c2 AS C1, T5_1.c2 AS C2, T5_1.c3 AS C3, T5_1.c3 AS C4, T5_1.c2 AS C5 FROM DC AS T5_1 UNION SELECT T5_1.c2 AS C1, T5_1.c3 AS C2, T5_1.c2 AS C3, T5_1.c2 AS C4, T5_1.c3 AS C5 FROM DC AS T5_1) AS T3_1) AS T2_1 WHERE (T2_1.C1 = rb3)), rb2 = (SELECT COUNT_BIG(DISTINCT T2_1.C1) AS C1 FROM (SELECT DISTINCT T3_1.C1 AS C1 FROM (SELECT T5_1.rc2 AS C1 FROM RC AS T5_1 UNION ALL SELECT T5_1.c3 AS C1 FROM DC AS T5_1) AS T3_1) AS T2_1 WHERE (T2_1.C1 > rb1)), rb3 = (SELECT COUNT_BIG(*) AS C1 FROM (SELECT DISTINCT T3_1.C1 AS C1, T3_1.C2 AS C2, T3_1.C3 AS C3, T3_1.C4 AS C4, T3_1.C5 AS C5, T3_1.C6 AS C6, T3_1.C7 AS C7, T3_1.C8 AS C8, T3_1.C9 AS C9, T3_1.C10 AS C10 FROM (SELECT T5_1.b2 AS C1, T5_1.b1 AS C2, T5_1.b3 AS C3, T5_1.b2 AS C4, T5_1.b2 AS C5, T5_1.b2 AS C6, T5_1.b2 AS C7, T5_1.b1 AS C8, T5_1.b2 AS C9, T5_1.b3 AS C10 FROM DB AS T5_1 UNION SELECT T5_1.ra3 AS C1, T5_1.ra3 AS C2, T5_1.ra3 AS C3, T5_1.ra3 AS C4, T5_1.ra2 AS C5, T5_1.ra3 AS C6, T5_1.ra1 AS C7, T5_1.ra1 AS C8, T5_1.ra1 AS C9, T5_1.ra1 AS C10 FROM RA AS T5_1) AS T3_1) AS T2_1 WHERE (T2_1.C2 <= rb3)) WHERE rb1 IN (SELECT T2_1.C1 AS C1 FROM (SELECT T4_1.a2 AS C1, T4_1.a1 AS C2, T4_1.a1 AS C3, T4_1.a2 AS C4, T4_1.a1 AS C5, T4_1.a2 AS C6, T4_1.a3 AS C7, T4_1.a1 AS C8 FROM DA AS T4_1 WHERE (T4_1.a1 > (SELECT MIN(DISTINCT T5_1.b3) AS C1 FROM DB AS T5_1 WHERE (T5_1.b3 <= T4_1.a1))) UNION ALL SELECT T4_1.a2 AS C1, T4_1.a2 AS C2, T4_1.a1 AS C3, T4_1.a1 AS C4, T4_1.a1 AS C5, T4_1.a1 AS C6, T4_1.a1 AS C7, T4_1.a3 AS C8 FROM DA AS T4_1) AS T2_1);
Oorzaak
Dit probleem doet zich voor vanwege een fout in SQL Server query Optimizer.
Oplossing
Cumulatieve updategegevens
SQL Server 2008 Service Pack 2
De oplossing voor dit probleem werd voor het eerst uitgebracht in cumulatieve update 6 voor SQL Server 2008 Service Pack 2. Klik voor meer informatie over dit cumulatieve updatepakket op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2582285 Cumulatief updatepakket 6 voor SQL Server 2008 Service Pack 2Opmerking Aangezien de builds cumulatief zijn, bevat elke nieuwe correctie release alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige versie van SQL Server 2008 fix. Microsoft raadt u aan dat u de meest recente reparatie versie met deze hotfix toepast. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
2402659 De versies van SQL Server 2008 die na SQL Server 2008 Service Pack 2 zijn uitgebracht Hotfixes voor Microsoft SQL Server 2008 worden gemaakt voor specifieke SQL Server-servicepakketten. U moet een hotfix voor SQL Server 2008 Service Pack 2 toepassen op een installatie van SQL Server 2008 Service Pack 2. Standaard is de hotfix van een SQL Server-servicepakket opgenomen in het volgende SQL Server-servicepakket.
SQL Server 2008 R2
De oplossing voor dit probleem werd voor het eerst uitgebracht in de cumulatieve update 9. Voor meer informatie over het verkrijgen van dit cumulatieve updatepakket voor SQL Server 2008 R2 klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2567713 Cumulatief update pakket 9 voor SQL Server 2008 R2 Opmerking Aangezien de builds cumulatief zijn, bevat elke nieuwe correctie release alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige versie van SQL Server 2008 R2 correctie. U wordt aangeraden om de meest recente correctie voor deze hotfix toe te passen. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
981356 De SQL Server 2008 R2-builds die zijn uitgebracht nadat SQL Server 2008 R2 werd uitgebracht
SQL Server 2008 R2 Service Pack 1
De oplossing voor dit probleem werd voor het eerst uitgebracht in cumulatieve update 2 voor SQL Server 2008 R2 Service Pack 1. Als u meer informatie wilt over het verkrijgen van dit cumulatieve updatepakket, klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2567714 Cumulatief update pakket 2 voor SQL Server 2008 R2 Service Pack 1Opmerking Aangezien de builds cumulatief zijn, bevat elke nieuwe correctie release alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige versie van SQL Server 2008 R2 correctie. U wordt aangeraden om de meest recente correctie voor deze hotfix toe te passen. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
2567616 De SQL Server 2008 R2-builds die zijn uitgebracht na SQL Server 2008 R2 Service Pack 1 is uitgebracht
SQL Server 2008 Service Pack 1
De oplossing voor dit probleem werd voor het eerst uitgebracht in cumulatieve update 15 voor SQL Server 2008 Service Pack 1. Klik voor meer informatie over dit cumulatieve updatepakket op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2555406 Cumulatief updatepakket 15 voor SQL Server 2008 Service Pack 1Opmerking Aangezien de builds cumulatief zijn, bevat elke nieuwe correctie release alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige versie van SQL Server 2008 fix. Microsoft raadt u aan dat u de meest recente reparatie versie met deze hotfix toepast. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
970365 De versies van SQL Server 2008 die zijn uitgebracht na SQL Server 2008 Service Pack 1, zijn uitgebracht Hotfixes voor Microsoft SQL Server 2008 worden gemaakt voor specifieke SQL Server-servicepakketten. U moet een hotfix SQL Server 2008 Service Pack 1 toepassen op een installatie van SQL Server 2008 Service Pack 1. Standaard is de hotfix van een SQL Server-servicepakket opgenomen in het volgende SQL Server-servicepakket.
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.
Verwijzingen
Ga naar de volgende Microsoft-website voor meer informatie over het submagazijn parallel data warehouse:
Algemene informatie over het submagazijn voor parallel dataAls u meer informatie wilt over het incremental service model voor SQL Server, klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
935897 Een incrementeel service model is beschikbaar in het SQL Server-team om hotfixes te leveren voor gerapporteerde problemenKlik voor meer informatie over het naamgevingsschema voor SQL Server-updates op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
822499 Nieuw naam schema voor updatepakketten voor Microsoft SQL Server-softwareKlik voor meer informatie over de terminologie van software-updates op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
824684 Beschrijving van de standaardterminologie die wordt gebruikt voor het beschrijven van Microsoft-software-updates