Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Проблемы

Предположим, что у вас есть запрос на выполнение некоторых строковых операций (например, сцепления, для столбцов CHAR или VARCHAR в Microsoft SQL Server 2014, 2016 и 2017). Рассмотрим следующий сценарий.

  • Вы объединяете столбцы с различными параметрами сортировки, которые им назначены.

  • Эти параметры сортировки несовместимы друг с другом. Например, вы пытаетесь сцепить столбец, который будет разбираться как Latin1_General_CI_AI с Latin1_General_BIN.

  • Конечный результат сцепления назначается определенным параметрам сортировки (в том числе "database_default") в зависимости от разрешения конфликта параметров сортировки.

В этом случае SQL Server может возвращать розничное утверждение, которое указывает на недействительное сравнение из-за ОТСУТСТВия параметров сортировки, а также может появиться сообщение об ошибке, подобное приведенному ниже.

Расположение: typinfo. cpp:LineNumber Выражение: false SPID: SPID Идентификатор процесса: ProcessID Описание: недействительное сравнение из-за ОТСУТСТВия параметров сортировки.

MSG 3624, Level 20, штат 1, строка LineNumber Проверка системного утверждения завершилась сбоем. Подробности см. в журнале ошибок SQL Server. Как правило, сбой утверждения вызывается из-за ошибки программного обеспечения или повреждения данных. Чтобы проверить, не повреждена ли база данных, попробуйте выполнить команду DBCC CHECKDB. Если вы согласились отправлять дампы в Microsoft во время установки, мини-дамп будет отправлен в корпорацию Майкрософт. Обновление может быть выпущено корпорацией Майкрософт в новейшем пакете обновления или в виде исправления из службы технической поддержки.

Сообщение 596, уровень 21, состояние 1, строка LineNumber Не удается продолжить выполнение, так как сеанс находится в состоянии Kill.

Сообщение 0, уровень 20, состояние 0, строка LineNumber

При текущей команде возникла серьезная ошибка.  Результаты, если таковые имеются, должны быть удалены.

Причина

На этапе оптимизации запроса SQL Server пытается вычислить мощности на промежуточных результатах различных стадий запроса, например сцепления. Поскольку разрешение конфликтов между параметрами сортировки происходит в самом конце, оптимизатор запросов может не знать о нем и пытаться выполнить вычисление мощности сцепления для входных данных с конфликтующими параметрами сортировки.

Решение

Эта проблема исправлена в перечисленных ниже накопительных обновлениях для SQL Server.

       Накопительное обновление 8 для SQL Server 2016 с пакетом обновления 1 (SP1)  

       Накопительное обновление 4 для SQL Server 2017

       Накопительное обновление 9 для SQL Server 2014 с пакетом обновления 2 (SP2)

Все новые накопительные обновления для SQL Server содержат все исправления и все исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Ознакомьтесь с самыми последними накопительными обновлениями для SQL Server.

Последнее накопительное обновление для SQL Server 2016

Последнее накопительное обновление для SQL Server 2017

Последнее накопительное обновление для SQL Server 2014

Статус

Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".

Ссылки

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

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×