FIX: Una riduzione delle prestazioni quando si esegue una query che contiene correlate predicati e nel 2008 SQL Server o SQL Server 2008 R2 o SQL Server 2012

Traduzione articoli Traduzione articoli
Identificativo articolo: 2658214 - Visualizza i prodotti a cui si riferisce l?articolo.
Microsoft distribuisce Microsoft SQL Server 2008 R2 o Microsoft SQL Server 2008 o Microsoft SQL Server 2012 correzioni in un unico file scaricabile. Poiché le correzioni sono cumulative, ogni nuova versione contiene tutti gli hotfix e gli aggiornamenti della protezione inclusi con il precedente SQL Server 2008 R2 o 2008 SQL Server o Microsoft SQL Server 2012 rilascio dell'aggiornamento.
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

Si consideri il seguente scenario. Si esegue una query che include più predicati e nel 2008 di Microsoft SQL Server, in Microsoft SQL Server 2008 R2 o in Microsoft SQL Server 2012. Le condizioni dei predicati e sono correlate. In questo scenario, che si verifichi una riduzione delle prestazioni di SQL Server 2008. Ad esempio, questo problema si verifica quando si esegue una query simile al seguente:
(column1 = constant1 or column1 = constant2 or ?) and (column2 = constant3 or column2 = constant4 or ?) and ?

Cause

Questo problema si verifica perché query optimizer seleziona un piano di query inefficienti se la query contiene predicati e correlati. Quando il numero stimato di righe soddisfa le condizioni di un predicato E , SQL Server presuppone che tutte le condizioni sono indipendenti. Se le condizioni correlate, SQL Server viene infatti sottostimata la cardinalità di predicati E .

Risoluzione

Per risolvere questo problema, applicare l'aggiornamento cumulativo seguente. Dopo aver applicato l'aggiornamento, è necessario attivare il flag di traccia 4137 per aggiungere la logica per la stima di cardinalità dei predicati e nuova.

NotaQuesto aggiornamento si applica solo ai predicati del filtro.

Informazioni sull'aggiornamento cumulativo

SQL Server 2008 Service Pack 3

Innanzitutto, la correzione di questo problema è stata rilasciata nell'aggiornamento cumulativo 7 per SQL Server 2008 Service Pack 3. Per ulteriori informazioni su come ottenere il pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
2738350 Pacchetto di aggiornamento cumulativo 7 per SQL Server 2008 Service Pack 3
Nota Poiché le versioni sono cumulative, ogni nuova versione contiene tutte le correzioni rapide e rilascio delle correzioni per tutte le correzioni incluse nel precedente SQL Server 2008 Service Pack 3. Si consiglia di considerare l'ipotesi di applicare la versione più recente contenente tale hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
2629969 Il 2008 SQL Server versioni rilasciate dopo il rilascio di SQL Server 2008 Service Pack 3

SQL Server 2012

La correzione di questo problema è stata rilasciata prima nell'aggiornamento cumulativo 1 per SQL Server 2012. Per ulteriori informazioni su questo pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
2679368 Pacchetto di aggiornamento cumulativo 1 per SQL Server 2012
Nota Poiché le versioni sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutte le correzioni fornite con il precedente 2012 SQL Server fix release. Microsoft consiglia di considerare l'applicazione alla versione più recente di correzione contenente tale hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
2692828 Il 2012 SQL Server versioni rilasciate dopo il rilascio di SQL Server 2012
È necessario applicare un hotfix SQL Server 2012 un'installazione di SQL Server 2012.

SQL Server 2008 R2 Service Pack 1

La correzione di questo problema è stata rilasciata prima 5 di aggiornamento cumulativo per SQL Server 2008 R2 Service Pack 1. Per ulteriori informazioni su come ottenere il pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
2659694 Pacchetto di aggiornamento cumulativo 5 per SQL Server 2008 R2 Service Pack 1
Nota Poiché le versioni sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutte le correzioni fornite con il SQL Server 2008 R2 precedente correggere rilascio. Si consiglia di considerare l'ipotesi di applicare la versione più recente contenente tale hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
2567616 Il SQL Server 2008 R2 versioni rilasciate dopo il rilascio di SQL Server 2008 R2 Service Pack 1

SQL Server 2008 Service Pack 2

La correzione di questo problema è stata rilasciata prima nell'aggiornamento cumulativo 8 per SQL Server 2008 Service Pack 2. Per ulteriori informazioni su questo pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
2648096 Pacchetto di aggiornamento cumulativo 8 per SQL Server 2008 Service Pack 2
Nota Poiché le versioni sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutte le correzioni fornite con il precedente 2008 SQL Server fix release. Microsoft consiglia di considerare l'applicazione alla versione più recente di correzione contenente tale hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
2402659 Il 2008 SQL Server versioni rilasciate dopo il rilascio di SQL Server 2008 Service Pack 2
Microsoft SQL Server 2008 aggiornamenti rapidi vengono creati per service Pack specifici di SQL Server. L'installazione del SQL Server 2008 Service Pack 2, è necessario applicare un hotfix SQL Server 2008 Service Pack 2. Per impostazione predefinita, qualsiasi hotfix fornito in un service pack SQL Server è incluso nel successivo service pack SQL Server.

Status

Microsoft ha confermato che questo è un problema nei prodotti Microsoft elencati nella sezione "Si applica a".

Riferimenti

Per ulteriori informazioni sul modello di manutenzione incrementale per SQL Server, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
935897 Modello di manutenzione incrementale è disponibile dal team di SQL Server per offrire gli hotfix per i problemi segnalati
Per ulteriori informazioni sullo schema di denominazione per gli aggiornamenti di SQL Server, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
822499Schema di denominazione per i pacchetti di aggiornamento del software Microsoft SQL Server
Per ulteriori informazioni sulla terminologia degli aggiornamenti software, fare clic sul numero dell'articolo riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:
824684 Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft

Proprietà

Identificativo articolo: 2658214 - Ultima modifica: lunedì 17 settembre 2012 - Revisione: 3.0
Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
Chiavi: 
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2658214 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 2658214
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com