Sintomi
Si supponga di creare una stored procedure compilata in modo nativo con una query che contiene un'espressione di grandi dimensioni con più di 256 operatori in Microsoft SQL Server 2014. Quando si tenta di usare showplan_xml nella query o nella procedura, viene visualizzato l'errore seguente:
Nota
Messaggio 41322, livello 16, stato 33, procedura <sp_name>, riga <line_number>
L'esportazione/importazione MAT/PIT ha rilevato un errore per la tabella ottimizzata per la memoria o una stored procedure compilata in modo nativo con ID <ID oggetto Numero>ID nel numero ID ID< database>. Il codice di errore è stato 0x88000015.
Causa
Il problema si verifica a causa di un difetto in SQL Server 2014.
Risoluzione
Dopo l'applicazione dell'hotfix, showplan_xml avrà esito positivo per la procedura nativa con un numero elevato di operatori.
Il problema è stato risolto per la prima volta nell'aggiornamento cumulativo seguente di SQL Server.
Aggiornamento cumulativo 1 per SQL Server 2014 /it-it/help/2931693
Informazioni sugli aggiornamenti cumulativi per SQL Server
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutte le correzioni rapide e di sicurezza incluse nell'aggiornamento cumulativo precedente. Vedere gli aggiornamenti cumulativi più recenti per SQL Server:
Soluzione alternativa
Per risolvere il problema, usare le soluzioni alternative seguenti:
- Suddividere le espressioni in più espressioni secondarie.
- Usare le parentesi per forzare esplicitamente l'annidamento delle espressioni in modo da creare un albero delle espressioni ampio ma poco profondo anziché un albero delle espressioni profondamente annidato.
Stato
Microsoft ha confermato che si tratta di un problema relativo ai prodotti elencati nella sezione "Si applica a".