KB3125525 - ÅTGÄRD: Funktionen CHANGETABLE i en fråga returnerar felaktiga resultat om spårning av ändringar har aktiverats i SQL Server 2012 eller SQL Server 2014

Gäller för
SQL Server 2012 Service Pack 3 SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Symptom

Tänk dig följande scenario:

  • Du aktiverar spårning av ändringar för en SQL Server databastabell i Microsoft SQL Server 2012 eller SQL Server 2014.
  • Bastabellen innehåller mycket få rader med data. Tabellen innehåller till exempel en rad.
  • Sidotabellen för spårning av ändringar (intern systemtabell) innehåller ungefär 1 000 rader med data.
  • Systemtabellen syscommittab innehåller många rader. Tabellen innehåller till exempel 1,5 miljoner rader.

I det här scenariot, när du kör en fråga för att avgöra vilka ändringar som görs med hjälp av funktionen CHANGETABLE, kan SQL Server använda en plan som använder en hashmatchningsaggregering i stället för en sortering. Därför returnerar SQL Server felaktig information om ändringarna.

Lösning

Information om uppdateringen

Det här problemet åtgärdades först i följande kumulativa uppdatering för SQL Server:

          

Rekommendation: Installera den senaste kumulativa uppdateringen för SQL Server

Varje ny kumulativ uppdatering för SQL Server innehåller alla snabbkorrigeringar och alla säkerhetskorrigeringar som ingick i den tidigare kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:

      

Obs! Du hittar information om de senaste SQL Server-versionerna i Var hittar du information om de senaste SQL Server-versionerna.

Status

Microsoft har bekräftat att detta är ett problem i de Microsoft-produkter som anges i avsnittet "Gäller".

Referenser

Läs om den terminologi som Microsoft använder för att beskriva programuppdateringar.