KB2715312-FIX: errori durante l'esecuzione di una query che usa la clausola FOR XML nella modalità PATH in SQL Server 2008 R2 o in SQL Server 2012

Microsoft distribuisce le correzioni di Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) in un unico file scaricabile. Dato che le correzioni sono cumulative, ogni nuova versione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione di aggiornamento precedente di SQL Server 2008 R2 Service Pack 1 (SP1).

Sintomi

Considerare lo scenario descritto di seguito:

  • Si ha un'applicazione client che esegue una query in Microsoft SQL Server 2008 R2 o in Microsoft SQL Server 2012.

  • La query usa la clausola for XML nella modalità path .

  • La query esegue il comando SET NO_BROWSETABLE on per abilitare l'impostazione NO_BROWSETABLE .

In questo scenario, la query non viene eseguita. Inoltre, viene visualizzato il messaggio di errore seguente nell'applicazione client e viene generato un file di minidump nel log degli errori SQL.

Msg 0, livello 11, stato 0, errore di linea 0A grave si è verificato il comando corrente. I risultati, se presenti, devono essere eliminati. Msg 0, livello 20, stato 0, errore di linea 0A grave si è verificato il comando corrente. I risultati, se presenti, devono essere eliminati.

Note

  • Un piano di query usato per eseguire la query non viene compilato.

  • Non ci sono eventi del profiler per la query non riuscita quando si avvia il profilo di SQL Server.

  • Quando si verifica questo problema, il servizio SQL Server si arresta in modo intermittente.

Causa

Questo problema si verifica a causa di un errore interno in SQL Server algebrizer. Questo problema si verifica quando SQL Server tenta di aggiungere colonne che vengono estratte da un lato di un nodo operatore di join all'altro lato del nodo operatore join. Di conseguenza, un albero di algebrizer non valido viene creato perché le colonne definite in un lato del nodo dell'operatore di join non sono visibili sull'altro lato del nodo operatore join.

Risoluzione

Informazioni sull'aggiornamento cumulativo

SQL Server 2012

La correzione di questo problema è stata rilasciata per la prima volta in aggiornamento cumulativo 3 per SQL Server 2012. Per altre informazioni su questo pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo della Microsoft Knowledge Base seguente per visualizzare l'articolo:

2723749 Pacchetto di aggiornamento cumulativo 3 per SQL Server 2012Nota Poiché le build sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione precedente di SQL Server 2012 FIX. Microsoft consiglia di applicare l'ultima versione di correzione che contiene questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo seguente per visualizzare l'articolo nella Microsoft Knowledge Base:

2692828 Build di SQL Server 2012 rilasciate dopo il rilascio di SQL Server 2012 È necessario applicare un hotfix di SQL Server 2012 a un'installazione di SQL Server 2012.

SQL Server 2008 R2 Service Pack 2

La correzione di questo problema è stata rilasciata per la prima volta in aggiornamento cumulativo 1 per SQL Server 2008 R2 Service Pack 2. Per altre informazioni su come ottenere questo pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo della Microsoft Knowledge Base seguente per visualizzare l'articolo:

2720425 Pacchetto di aggiornamento cumulativo 1 per SQL Server 2008 R2 Service Pack 2Nota Poiché le build sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione precedente di SQL Server 2008 R2 Fix. Ti consigliamo di considerare l'applicazione della versione di correzione più recente che contiene questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo seguente per visualizzare l'articolo nella Microsoft Knowledge Base:

2730301 Build di SQL Server 2008 R2 rilasciate dopo il rilascio di SQL Server 2008 R2 Service Pack 2

Pacchetto di aggiornamento cumulativo 7 per SQL Server 2008 R2 SP1

La correzione di questo problema è stata rilasciata per la prima volta in aggiornamento cumulativo 7 per SQL Server 2008 R2 Service Pack 1. Per altre informazioni su questo pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo della Microsoft Knowledge Base seguente per visualizzare l'articolo:

2703282 Pacchetto di aggiornamento cumulativo 6 per SQL Server 2008 R2 SP1Nota Poiché le build sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nella versione precedente di SQL Server 2008 R2 Fix. Microsoft consiglia di applicare l'ultima versione di correzione che contiene questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo seguente per visualizzare l'articolo nella Microsoft Knowledge Base:

2567616 Build di SQL Server 2008 R2 rilasciate dopo il rilascio di SQL Server 2008 R2 SP1 Gli hotfix di Microsoft SQL Server 2008 R2 vengono creati per specifici Service Pack di SQL Server. È necessario applicare un hotfix di SQL Server 2008 R2 Service Pack 1 a un'installazione di SQL Server 2008 R2 Service Pack 1. Per impostazione predefinita, qualsiasi hotfix fornito in un Service Pack di SQL Server è incluso nel prossimo Service Pack di SQL Server.

Stato

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

Soluzione alternativa

Per risolvere il problema, usare uno dei metodi seguenti.

Metodo 1

Non usare la clausola for XML nella modalità path .

Metodo 2

Eseguire il comando seguente per disabilitare l'impostazione NO_BROWSETABLE :

IMPOSTARE NO_BROWSETABLE DISATTIVATO

Riferimenti

Per altre informazioni sulla modalità di visualizzazione, visitare il sito Web MSDN seguente:

Informazioni generali sulla modalità di visualizzazionePer altre informazioni su come usare la modalità PATH con la clausola FOR XML, visitare il sito Web MSDN seguente:

Come usare la modalità PATH con la clausola FOR XML

Serve aiuto?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×