Pazīmes
Kardinalitātes novērtēšanas loģika, kas pazīstama kā kardinalitātes aprēķinātājs (CE), tika pārveidota programmā SQL Server 2014 (saderības līmenis 120) un SQL Server 2016 (saderības līmenis 130), lai uzlabotu vaicājumu plānu kvalitāti.
Tomēr, kompilējot sarežģītu vaicājumu, kurā ir daudz savienojumu ar operatoru DISTINCT vai GROUP BY, kompilācija var aizņemt daudz ilgāku laiku, nekā paredzēts.
Risinājums
Šis atjauninājums, kas novērš šo problēmu, ir iekļauts SQL Server 2016 1. servisa pakotnē.
Piezīme Pēc šī atjauninājuma instalēšanas ir jāiestata izsekošanas karodziņš 4199, lai iespējotu labojumu. Lai iestatītu izsekošanas karodziņu 4199, skatiet tēmu Izsekošanas karodziņi (Transact-SQL) vietnē MSDN.
Par SQL SQL Server 2016 būvējumiem
Katrā jaunajā SQL Server 2016 būvējumā ir visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā būvējumā. Ieteicams instalēt jaunāko SQL Server 2016 būvējumu.
Risinājums
Lai šo problēmu atrisinātu, izmantojiet kādu no šīm metodēm:
- Izmantojiet izsekošanas karodziņu 9481, lai iestatītu vaicājumu optimizētāja kardinalitātes novērtēšanas modeli uz SQL Server 2012 vai vecāku versiju.
- Mainiet datu bāzes saderības līmeni uz SQL Server 2012 (110) vai vecāku versiju.
Statuss
Microsoft apstiprināja, ka šī ir problēma Microsoft produktos, kas norādīti sadaļā "attiecas uz".
Atsauces
Uzziniet par terminoloģiju, ko Microsoft izmanto, lai aprakstītu programmatūras atjauninājumus.