Síntomas
Imagine la siguiente situación:
-
Una base de datos se usa con el nivel de compatibilidad establecido en 130 en Microsoft SQL Server 2016.
-
Ejecuta una consulta que tiene acceso a un índice de almacén de columnas y a un índice de almacén de filas o a un montón, e incluye un predicado de filtro (cláusula WHERE).
En este escenario, SQL Server no podrá acercar el predicado de filtro al operador de origen de datos (búsqueda o análisis de índice o tabla). Esto puede provocar un rendimiento de consulta subóptimo.
Además, si la consulta usa una expresión (como la conversión de tipos) donde su exactitud depende de los datos filtrados (por ejemplo, una columna de tabla char se convierte en int, pero solo un subconjunto de valores contiene una representación int válida y este subconjunto se identifica por el predicado de filtro), es posible que la consulta produzca un error de conversión de datos similar a uno de los siguientes:
Msg 245, Nivel 16, Estado 1, Conversión de línea 20
falló al convertir el valor varchar '0,5' a tipo de datos int.
Msg 8114, Nivel 16, Estado 5, Línea 34
Error al convertir el tipo de datos varchar a bigint.
Solución
Este problema se ha corregido en la siguiente actualización acumulativa de SQL Server:
Actualización acumulativa 2 para SQL Server 2016 SP1
Nota Debe habilitar las revisiones del optimizador de consultas para que esta corrección surta efecto.
Puede habilitar las revisiones del optimizador de consultas mediante una de las siguientes opciones: marca de seguimiento 4199, configuración de configuración de ámbito de la base de datos QUERY_OPTIMIZER_HOTFIXES=ON (disponible en SQL Server 2016 y versiones posteriores) o USE_HINT opción de consulta "ENABLE_QUERY_OPTIMIZER_HOTFIXES" (disponible en SQL Server 2016 SP1 y versiones posteriores).
Cada nueva actualización acumulativa de SQL Server contiene todas las revisiones y todas las correcciones de seguridad que se incluyeron con la actualización acumulativa anterior. Echa un vistazo a las últimas actualizaciones acumulativas de SQL Server:
La última actualización acumulativa de SQL Server 2016
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".
Referencias
Obtén información sobre la terminologíaque usa Microsoft para describir las actualizaciones de software.