MSSQLSERVER_8621
Si applica a: SQL Server
Dettagli
Attributo | Valore |
---|---|
Nome prodotto | SQL Server |
ID evento | 8621 |
Origine evento | MSSQLSERVER |
Componente | SQLEngine |
Nome simbolico | OPTIMIZER_STACK_OVERFLOW_ERR |
Testo del messaggio | Spazio di stack esaurito durante l'ottimizzazione della query da parte di Query Processor. Semplificare la query. |
Spiegazione
La causa più probabile dell'errore risiede nelle dimensioni della query espansa, La query espansa sostituisce nella query originale le definizioni di ognuna delle viste, delle colonne calcolate, delle funzioni Transact-SQL e delle espressioni di tabella comuni a cui fa riferimento, nonché le azioni a catena come l'aggiornamento di indici secondari, viste e trigger.
Probabilmente la query presenta alcune dimensioni grandi, ad esempio il numero di tabelle a cui fanno riferimento le definizioni delle viste o un'espressione scalare di dimensioni molto estese.
Azione utente
Semplificare la query suddividendola in più query secondo la dimensione più grande. Rimuovere innanzitutto qualsiasi elemento della query non strettamente necessario, quindi provare ad aggiungere una tabella temporanea e separare la query in due parti. Lo spostamento di una parte della query in una sottoquery, una funzione o un'espressione di tabella comune non è sufficiente perché vengono ricombinati dal compilatore Transact-SQL.