Применяется к
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Business Intelligence SQL Server 2012 Analysis Services SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard

Проблемы

Рассмотрим следующий сценарий.

  • Процедура запускается в Microsoft SQL Server 2014 или SQL Server 2012.

  • Процедура содержит запрос со следующими условиями:

    • Она присоединяется к таблице, которая обновляется очень часто.

    • У него есть предложение WHERE, содержащее параметры.

    • Она использует параметр (перекомпилируйте).

  • Эта процедура выполняется для нескольких одновременных подключений с разными наборами значений параметров.

  • Сервер сильно загружен, и это приводит к тому, что каждая из этих процедур может занять больше времени, чем обычно.

В этом случае вы можете получать неверные результаты процедуры, которая выполняется для вашего соединения, если в течение интервала времени между компиляцией запроса и запуском выполнения запроса в соединении выполняются следующие дополнительные условия:

  • Условие 1: другое параллельное соединение вносит изменения в Объединенную таблицу, достаточно большие, чтобы активировать другую перекомпиляцию запроса в вашем соединении.

  • Условие 2: один и тот же запрос был повторно скомпилирован из другого соединения и затем помещен в кэш.

Важно! Этот временный вопрос очень редкий.

Причина

Эта проблема возникает из-за того, что значения параметров запроса изменяются на неверные значения после выполнения запроса в соединении. Это происходит из-за очень редких проблем с синхронизацией между параллельными компиляциями.

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

Статус

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

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

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

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