Проблемы
Предположим, что вы используете Microsoft SQL Server 2008 R2, SQL Server 2012 или SQL Server 2014. При выполнении запроса с использованием операторов TOP N и ORDER BY запрос выдает ошибку Assert, подобную приведенной ниже:
Расположение: "qstopsrt. cpp": 384Expression: fFalseSPID: <SPID>ИД процесса: <ProcessID>Location: Qxcntxt. cpp: 1052Expression: cref = = 0SPID: <идентификатор SPID>процесс: <ProcessID>Сообщение 3624, уровень 20, состояние 1, строка 2а. Проверка системного утверждения не пройдена. Подробности см. в журнале ошибок SQL Server. Как правило, сбой утверждения вызывается из-за ошибки программного обеспечения или повреждения данных. Чтобы проверить, не повреждена ли база данных, попробуйте выполнить команду DBCC CHECKDB. Если вы согласились отправлять дампы в Microsoft во время установки, мини-дамп будет отправлен в корпорацию Майкрософт. Обновление может быть доступно в Microsoft в новейшем пакете обновления или в QFE от службы технической поддержки. В текущей команде возникла ошибка, связанная с сообщением 0, уровнем 20, состоянием 0, строка 0A серьезной ошибки. Результаты, если таковые имеются, должны быть удалены.
Примечание. Это исправление также может быть применено к плану запроса, содержащему "Сортировка (Top N)".
Причина
Эта проблема возникает из-за внутренней ошибки в обработчике выполнения запросов.
Решение
Эта проблема впервые устранена в следующем накопительном обновлении SQL Server.
Накопительное обновление 1 для SQL Server 2012 с пакетом обновления 2 (SP2) /en-us/help/2976982
Накопительное обновление 2 для SQL Server 2014 /en-us/help/2967546
Накопительное обновление 10 для SQL Server 2012 с пакетом обновления 1 (SP1) /en-us/help/2954099
Накопительное обновление 12 для SQL Server 2008 R2 с пакетом обновления 2 (SP2) /en-us/help/2938478
Все новые накопительные обновления для SQL Server содержат все исправления и все исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Ознакомьтесь с самыми последними накопительными обновлениями для SQL Server.
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".