Обновление содержит аргумент подсказки запроса ИСПОЛЬЗОВАТЬ ПОДСКАЗКУ в SQL Server 2016

Применимо к: SQL Server 2016 DeveloperSQL Server 2016 EnterpriseSQL Server 2016 Enterprise Core Больше

Обзор


Это обновление вводит новый аргумент подсказку запроса, Используйте ПОДСКАЗКУ, позволяющего диск оптимизатор запросов без повышенных учетные данные или не являясь членом серверной роли sysadmin. Синтаксис этой новой подсказки запроса будет выглядеть примерно так:

<query_hint > ::=
{
USE HINT(N'key' [ [, ]...n ])
}

Это обновление также содержит следующие параметры подсказки, которые можно использовать с аргументом Использовать ПОДСКАЗКУ .
 
Параметр Эквивалентный флаг трассировки Описание
FORCE_LEGACY_CARDINALITY_ESTIMATION TF 9481 Можно задать модель оценки мощности оптимизатора запросов SQL Server 2012 и более ранних версиях, независимо от уровня совместимости базы данных.
ENABLE_QUERY_OPTIMIZER_HOTFIXES TF 4199 Управляет изменениями оптимизатора запросов в накопительном обновлении и пакете обновления SQL Server
DISABLE_PARAMETER_SNIFFING TF 4136 Отключает параметр перехвата, если не используется значение OPTION(RECOMPILE), WITH RECOMPILE или OPTIMIZE FOR .
ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES TF 4137 Приводит к формированию сервером SQL Server плана с помощью использования минимальной избирательности при оценке И формируются предикаты фильтров для учетных данных для корреляции в модели оценки количества элементов оптимизатора запросов SQL Server 2012 и более ранних версий.
DISABLE_OPTIMIZER_ROWGOAL TF 4138 Приводит к формированию сервером SQL Server плана, который не использует цель корректировки строки с запросами, содержащими ключевые слова TOP, OPTION (FAST IN), IN или EXISTS.
ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS TF 4139 Включает автоматически создаваемые быстрые статистики (Гистограмма поправка) независимо от состояния ключевого столбца. Если используется этот параметр, независимо от начального состояния столбца статистики (по возрастанию, по убыванию или стационарно), гистограмма, используемая для оценки количества элементов будет корректироваться во время компиляции запроса.
ASSUME_JOIN_PREDICATE_DEPENDS_ON_FILTERS TF 9476 Приводит к формированию сервером SQL Server плана, используя допущение Простого вложения вместо допущения Базового вложения по умолчанию, модели оценки количества элементов оптимизатора запросов в версиях SQL Server 2014 до версии SQL Server 2016.
DISABLE_OPTIMIZED_NESTED_LOOP TF 2340 Приводит к неиспользованию сервером SQL Server операции сортировки (Сортировка партии) для оптимизированного вложенного цикла соединения при формировании плана.
FORCE_DEFAULT_CARDINALITY_ESTIMATION   Заставляет оптимизатор запросов с помощью модели оценки мощности, соответствующий уровень совместимости текущей базы данных. Использовать эту подсказку для переопределения области конфигурации базы данных параметр LEGACY_CARDINALITY_ESTIMATION = ON или флаг трассировки 9481.

Дополнительные сведения


Это обновление включено в Пакет обновления 1 для SQL Server 2016.
 
Сценарии, в котором поведение оптимизатора запросов SQL Server должно иметь подсказки, являются довольно общими и обычно описываются с помощью нескольких флагов трассировки (документированых и недокументированных). Однако когда флаги трассировки установлены глобально, они могут иметь неблагоприятное воздействие на другие задачи. Кроме того, позволяя им сеансов нецелесообразно с существующими приложениями и их включении для запросов с QUERYTRACEON ПАРАМЕТРА необходимо членство в фиксированной серверной роли sysadmin. (Хотя это можно обойти, используя руководство плана или хранимую процедуру, но повышенные права учетных данных по-прежнему необходимы.)

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

Дополнительные сведения о флагах трассировки см Флаги трассировки (Transact-SQL) на веб-узле Microsoft Developer Network (MSDN).

Ссылки


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