MSSQLSERVER_8621
Se aplica a: SQL Server
Detalles
Attribute | Valor |
---|---|
Nombre del producto | SQL Server |
Id. de evento | 8621 |
Origen de eventos | MSSQLSERVER |
Componente | SQLEngine |
Nombre simbólico | OPTIMIZER_STACK_OVERFLOW_ERR |
Texto del mensaje | El procesador de consultas se quedó sin espacio de pila durante la optimización de la consulta. Simplifique la consulta. |
Explicación
La causa más probable del error es el tamaño de la consulta expandida. La consulta expandida sustituye a la consulta original las definiciones de cada una de las vistas, columnas calculadas, funciones transact-SQL y expresiones de tabla comunes a las que hace referencia, así como acciones en cascada como actualizar índices secundarios, vistas y desencadenadores.
Lo más probable es que la consulta sea grande en alguna dimensión; por ejemplo, el número de tablas al que se hace referencia en las definiciones de vista o una expresión escalar muy grande.
Acción del usuario
Simplifique la consulta dividiéndola en varias a lo largo de la dimensión mayor. Primero quite cualquier elemento de la consulta que no sea realmente necesario y, a continuación, pruebe a agregar una tabla temporal y a dividir la consulta en dos. Simplemente mover una parte de la consulta a una subconsulta, función o expresión de tabla común no es suficiente porque el compilador de Transact-SQL vuelve a enlazarla.