Ознаки
Нижче описано такий сценарій.
- Ви намагаєтеся виконати запит із використанням стандартного оцінювання кількості рядів , коли гістограму ввімкнуто.
- Запит включає вирази в стовпці, який використовується в одному з предикатів.
У цьому випадку відбувається порушення прав доступу. Крім того, з'являється таке повідомлення про помилку:
Примітка.
msg 596, рівень 21, стан 1, номер рядка
Неможливо продовжити виконання, оскільки сеанс перебуває в аварійному стані.
Повідомлення 0, рівень 20, область 0, номер _рядка
Сталася серйозна помилка для поточної команди. Результати, якщо такі є, слід відкинути.
Примітка Поправку гістограми можна ввімкнути за допомогою параметра запиту USE HINT('ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS') або позначки трасування 4139.
Спосіб усунення проблеми
Цю проблему вирішено в таких оновленнях для SQL Server:
Сукупний пакет оновлень 8 для SQL ServerSQL Server 2017
Сукупний пакет оновлень 5 для SQL Server 2016 із пакетом оновлень 2
Відомості про збірки SQL Server
Кожна нова збірка для SQL Server містить усі виправлення та виправлення системи безпеки, які були в попередній збірці. Рекомендуємо інсталювати останню збірку для вашої версії SQL ServerSQL Server:
Найновіша збірка для SQL Server 2017
Останнє сукупне оновлення для SQL ServerSQL Server 2016
Стан
Корпорація Microsoft підтвердила, що це одна з проблем з продуктами Microsoft, перелічених у розділі "Застосовується до".
Посилання
DBCC TRACEON – позначки трасування (Transact-SQL)
Дізнайтеся, яку стандартну термінологію використовує корпорація Майкрософт для опису оновлень програмного забезпечення.