MSSQLSERVER_8621
Nouveau : 17 juillet 2006
Détails
Nom du produit |
SQL Server |
Version du produit |
9.0 |
Numéro de version |
9.00.1281.60 |
ID de l'événement |
8621 |
Source de l'événement |
MSSQLSERVER |
Composant |
SQLEngine |
Nom symbolique |
OPTIMIZER_STACK_OVERFLOW_ERR |
Texte du message |
Espace de pile du processeur de requêtes insuffisant lors de l'optimisation de la requête. Simplifiez la requête. |
Explication
La taille de la requête développée est la cause la plus probable de l'erreur. La requête développée substitue dans la requête d'origine les définitions de toutes les vues, colonnes calculées, fonctions Transact-SQL et expressions de table commune auxquelles elle fait référence, ainsi que les actions en cascade telles que la mise à jour des index secondaires, des vues et des déclencheurs.
La requête possède probablement une dimension importante ; par exemple, le nombre de tables référencées par les définitions de vues ou une expression scalaire très importante.
Action utilisateur
Simplifiez la requête en la divisant en plusieurs requêtes le long de la dimension la plus importante. Commencez par supprimer tous les éléments de la requête qui ne sont pas réellement nécessaires, puis essayez d'ajouter une table temporaire et de diviser la requête en deux. Le simple déplacement d'une partie de la requête vers une sous-requête, une fonction ou une expression de table commune ne suffit pas, car ces éléments sont réassociés par le compilateur Transact-SQL.