Súhrn
Táto aktualizácia obsahuje nový argument nápovedy dotazu, ktorý vám umožní riadiť optimalizáciu dotazov bez zvýšených poverení alebo bez toho, abybol členom roly servera sysadmin. Syntax tohto nového náznaku dotazu sa podobá nasledujúcemu hláseniu:
<query_hint > ::={USE HINT(N'key' [ [, ]...n ])}
Táto aktualizácia tiež uvádza nasledujúce možnosti nápovedy, ktoré možno použiť s argumentom použiť pomôcku .
Možnosť |
Ekvivalentný príznak sledovania |
Popis |
Vzťahuje sa na |
---|---|---|---|
ASSUME_JOIN_PREDICATE_DEPENDS_ON_FILTERS |
TF 9476 |
Spôsobí, že SQL Server vygeneruje plán dotazu s použitím jednoduchého prevzatia, namiesto predpokladu predvolenej základne na obmedzenie spojenia v rámci nástroja na optimalizáciu dotazov. Model odhadu n . programu SQL Server 2014 (12. x) alebo novšia verzia. |
|
ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES |
TF 4137 |
Spôsobí, že SQL Server vygeneruje plán s použitím minimálnej selektívnosti pri odhadovaní a predikátoch pre filtre, ktoré sa majú použiť na koreláciu. Tento názov nápovedy je rovnobežný s príznak sledovania 4137 pri použití s modelom odhadu kardinála SQL servera 2012 (11. x) a staršími verziami a má podobný efekt, keď sa použije príznak sledovania 9471 s modelom odhadu n SQL servera 2014 (12. x) alebo novšia verzia. |
|
DISABLE_BATCH_MODE_ADAPTIVE_JOINS |
Vypne adaptívne spojenia v dávkovom režime. |
spustenie v programe SQL Server 2017 |
|
DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK |
Vypnutie odozvy na pamäť v dávkovom režime. |
spustenie v programe SQL Server 2017 |
|
DISABLE_DEFERRED_COMPILATION_TV |
Vypnutie premennej tabuľky odloženej kompilácie. |
spustenie v programe SQL Server 2019 |
|
DISABLE_INTERLEAVED_EXECUTION_TVF |
Vypne Interleaved prevedenie pre funkcie s viacerými výpismi. |
spustenie v programe SQL Server 2017 |
|
DISABLE_OPTIMIZED_NESTED_LOOP |
TF 2340 |
Nariaďuje spracovateľovi dotazu, aby pri vytváraní plánu dotazu nepoužil operáciu zoradenia (zoradenie šarže) pre optimalizované vnorené slučkové spojenia. |
|
DISABLE_OPTIMIZER_ROWGOAL |
TF 4138 |
Spôsobí, že SQL Server vygeneruje plán, ktorý nepoužíva úpravy cieľa riadka s dotazmi, ktoré obsahujú tieto kľúčové slová:
|
|
DISABLE_PARAMETER_SNIFFING |
TF 4136 |
Nariaďuje optimalizáciu dotazu na použitie priemernej distribúcie údajov pri zostavovaní dotazu s jedným alebo s ďalšími parametrami. V tejto príručke je plán dotazu nezávislý od hodnoty parametra, ktorý sa prvýkrát používal pri zostavovaní dotazu. Tento tip použite na prepísanie nastavenia konfigurácie rozsahu databázy PARAMETER_SNIFFING = off. |
|
DISABLE_ROW_MODE_MEMORY_GRANT_FEEDBACK |
Vypne odozvu na pamäť režimu Row. |
spustenie v programe SQL Server 2019 |
|
DISABLE_TSQL_SCALAR_UDF_INLINING |
Vypne skalárne UDF. |
spustenie v programe SQL Server 2019 |
|
DISALLOW_BATCH_MODE |
Vypne spustenie v dávkovom režime. |
spustenie v programe SQL Server 2019 |
|
ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS |
TF 4139 |
Povoľuje automaticky vygenerované rýchle štatistické údaje (zmena histogramu) pre akýkoľvek hlavný stĺpec indexu, v ktorom je potrebné odhadnúť hodnotu n. Histogram, ktorý sa používa na odhadovanie kardinálnosti, sa upraví v dotaze na čas kompilácie, aby sa zohľadnila skutočná maximálna alebo minimálna hodnota tohto stĺpca. |
|
ENABLE_QUERY_OPTIMIZER_HOTFIXES |
TF 4199 |
Zapnutie rýchlych opráv dotazov (zmeny vydané v kumulatívnych aktualizáciách a balíkoch Service Pack pre SQL Server). Použitie tohto náznaku na prepísanie Nastavenie konfigurácie rozsahu databázy QUERY_OPTIMIZER_HOTFIXES = zapnuté. |
|
FORCE_DEFAULT_CARDINALITY_ESTIMATION |
TF 9481 |
Vynúti optimalizáciu dotazu na používanie Model odhadu kardinálnosti , ktorý zodpovedá aktuálnej úrovni kompatibility databázy. Použitie tohto náznaku na prepísanie Nastavenie konfigurácie rozsahu databázy LEGACY_CARDINALITY_ESTIMATION = zapnuté. |
|
FORCE_LEGACY_CARDINALITY_ESTIMATION |
TF 9481 |
Vynúti optimalizáciu dotazu na používanie Model odhadu kardinálnosti SQL servera 2012 (11. x) a starších verziách. Tento tip použite na prepísanie nastavenia konfigurácie rozsahu databázy LEGACY_CARDINALITY_ESTIMATION = zapnuté. |
|
QUERY_OPTIMIZER_COMPATIBILITY_LEVEL_n |
Vynúti správanie nástroja na optimalizáciu dotazov na úrovni dotazu. Toto správanie sa stáva, akoby bol dotaz zostavený s úrovňou kompatibility databázy. n, kde n je podporovaná úroveň kompatibility databázy. Pozrite si témusys.dm_exec_valid_use_hints zoznamu aktuálne podporovaných hodnôt n. |
spustenie v programe SQL Server 2017 (14. x) CU10 |
Ďalšie informácie nájdete v téme Tipy (Transact-SQL)-Query.
Ďalšie informácie
Táto aktualizácia je zahrnutá v balíku Service Pack 1 pre SQL Server 2016.
Každá nová zostava pre SQL Server 2016 obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúcej zostavy. Odporúčame nainštalovať najnovšiu zostavu pre SQL Server 2016.
Scenáre, v ktorých je potrebné uviesť správanie nástroja na optimalizáciu dotazov SQL servera (QO), sú pomerne časté a tradične sa riešia použitím niekoľkých (zdokumentovaných a nedokumentovaných) príznakov sledovania. Ak sa však príznaky sledovania nastavia na globálnej úrovni, môžu mať nepriaznivý vplyv na ostatné pracovné zaťaženia. Okrem toho povolenie na sedenie nie je praktické s existujúcimi aplikáciami a umožňuje im na dotaz s možnosťou QUERYTRACEON vyžaduje členstvo v úlohe sysadmin fixed server. (Hoci môžete obísť toto správanie pomocou Sprievodcu plánom alebo uloženej procedúry, stále sa vyžadujú zvýšené poverenia.) Príznaky sledovania sa používajú na dočasné nastavenie konkrétnych vlastností servera alebo na vypnutie konkrétneho správania, môže byť ťažké spravovať a rozumieť. Informácie o príznakoch sledovania nájdete na webovej lokalite Microsoft Developer Network (MSDN) v téme príznaky sledovania (Transact-SQL) .
Odkazy
Oboznámte sa s terminológiou , ktorú spoločnosť Microsoft používa na popis aktualizácií softvéru.