Correzione: Il numero di righe è sottovalutato per un predicato di query che incorpora una funzione scalare definita dall'utente in SQL Server 2014

IMPORTANTE: il presente articolo è stato tradotto tramite un software di traduzione automatica di Microsoft ed eventualmente revisionato dalla community Microsoft tramite la tecnologia CTF (Community Translation Framework) o da un traduttore professionista. Microsoft offre articoli tradotti manualmente e altri tradotti automaticamente e rivisti dalla community con l’obiettivo di consentire all'utente di accedere a tutti gli articoli della Knowledge Base nella propria lingua. Tuttavia, un articolo tradotto automaticamente, anche se rivisto dalla community, non sempre è perfetto. Potrebbe contenere errori di vocabolario, di sintassi o di grammatica. Microsoft declina ogni responsabilità per imprecisioni, errori o danni causati da una traduzione sbagliata o dal relativo utilizzo da parte dei clienti. Microsoft aggiorna frequentemente il software e gli strumenti di traduzione automatica per continuare a migliorare la qualità della traduzione.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 3151176
Sintomi
Si consideri lo scenario seguente:

  • Si dispone di una query che contiene un predicato che incorpora una parametri funzione scalare definita dall'utente.
  • Esistono più combinazioni di valori di parametro di input che possono produrre lo stesso risultato tramite la funzione definita dall'utente.
  • SQL Server utilizza nuovo stimatore cardinalità in cui la modalità di compatibilità del database è impostata su 120.

In questo scenario, quando si esegue la query, si verificano le prestazioni delle query a causa di un numero errato stimato di righe per il predicato che incorpora la funzione definita dall'utente nel piano della query.
Risoluzione
Questo problema è stato corretto nell'aggiornamento cumulativo per SQL Server seguente:



Dopo aver installato questo pacchetto di aggiornamento cumulativo, è necessario attivare il flag di traccia 4199. A tale scopo, è possibile aggiungere il -T4199 parametro di avvio. In alternativa, utilizzare il DBCC traceon(4199) istruzione per una determinata sessione.

Informazioni sugli aggiornamenti cumulativi per SQL Server
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutte le correzioni di protezione che sono stati incluse nell'aggiornamento cumulativo precedente. Estrarre gli ultimi aggiornamenti cumulativi per SQL Server:

Status
Microsoft ha confermato che questo è un problema per i prodotti Microsoft elencati nella sezione "Si applica a".
Riferimenti
Per ulteriori informazioni, vedere la terminologia Microsoft utilizza per descrivere gli aggiornamenti software.
Nota: questo è un articolo a "PUBBLICAZIONE RAPIDA", creato direttamente all'interno dell'organizzazione di supporto Microsoft. Le informazioni contenute nel presente documento vengono fornite "così come sono" in risposta alle problematiche riscontrate. A causa della rapidità con cui vengono resi disponibili, i materiali possono contenere errori di battitura e sono soggetti a modifica senza preavviso, in qualsiasi momento. Per altre considerazioni, vedere le Condizioni per l'utilizzo.

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 3151176 - Ultima revisione: 05/31/2016 10:07:00 - Revisione: 2.0

Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard

  • kbqfe kbfix kbexpertiseinter kbsurveynew kbmt KB3151176 KbMtit
Feedback