Симптоми
Имайте предвид сценария, описан по-долу:
- Можете да разрешите проследяването на промените за таблица на база данни на SQL Server в Microsoft SQL Server 2012 или SQL Server 2014.
- Основната таблица съдържа много малко редове с данни. Например таблицата съдържа един ред.
- Страничната таблица за проследяване на промените (вътрешна системна таблица) съдържа приблизително 1000 реда данни.
- Таблицата на syscommittab съдържа много редове. Например таблицата съдържа 1,5 милиона реда.
В този сценарий, когато изпълнявате заявка, за да определите кои промени са направени с помощта на функцията CHANGETABLE, SQL Server може да използва план, който използва агрегат на съвпадение на хешовете вместо сортиране. Следователно SQL Server връща неправилна информация за промените.
Решение
Актуализиране на информацията
Този проблем е коригиран за първи път в следната кумулативна актуализация за SQL Server:
- Сборна актуализация 13 за SQL Server 2014
- Сборна актуализация 6 за SQL Server 2014 Service Pack 1
- Сборна актуализация 1 за SQL Server 2012 Service Pack 3
Препоръка: Инсталирайте най-новата кумулативна актуализация за SQL Server
Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:
- Последна сборна актуализация за SQL Server 2014
- Последна кумулативна актуализация за SQL Server 2014 SP1
- Последна кумулативна актуализация за SQL Server 2012 SP3
Забележка: Откъде можете да намерите информация за най-новите компилации на SQL Server, откъдето да намерите информация за най-новите компилации на SQL Server.
Състояние
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.
Справки
Научете повече относно терминологията, която Microsoft използва за описване на актуализациите на софтуера.