Симптоми

Логиката на оценка на кардиналност, известна като оценител на кардиналност (CE), е променена в SQL Server 2014 (нива на съвместимост 120) и SQL Server 2016 (нива на съвместимост 130), за да подобрите качеството на плановете за заявки. Когато обаче съставяте сложна заявка, която съдържа много съединения с ОТДЕЛЕН оператор или ГРУПИРАне по оператора, съставянето може да отнеме много по-дълго време от очакваното.

Решение

Тази актуализация, която коригира този проблем, е включена в Service Pack 1 за SQL Server 2016.Забележка След като инсталирате тази актуализация, трябва да зададете 4199 флаг, за да разрешите корекцията. За да зададете 4199 за проследяване на флаг, вижте темата за проследяване на флагове (преговаряй SQL) в MSDN.

Всяка нова компилация за SQL Server 2016 съдържа всички поправки и всички корекции на защитата, които са били включени в предишната компилация. Препоръчваме ви да инсталирате най-новата компилация за SQL Server 2016.

Заобиколно решение

За да решите проблема по заобиколен начин, използвайте един от следните методи:

  • Използвайте проследяване на флаг 9481, за да зададете модела за изчисление на кардиналност на заявка за SQL Server 2012 или по-стара версия.

  • Промяна на нивото на съвместимост на базата данни с SQL Server 2012 (110) или по-стара версия.

Състоянието

Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са посочени в секцията "важи за".

Препратки

Научете повече за терминологията , която Microsoft използва, за да опише софтуерни актуализации.

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.