Síntomas
Al ejecutar una consulta que inserta la salida de sys.database_scoped_configurations en una variable de tabla o tabla temporal en Microsoft SQL Server 2016 y, a continuación, seleccionar desde esa variable de tabla o tabla temporal como se ve en el ejemplo siguiente, puede observar que solo hay una entrada para cada base de datos.
ANULAR TABLA SI EXISTE #h
CREATE TABLE #h(configuration_id INT, name sysname, value SQL_VARIANT, value_for_secondary SQL_VARIANT)
INSERTAR EN #h(configuration_id, nombre, valor, value_for_secondary)
SELECT * FROM sys.database_scoped_configurations D'
SELECT * FROM #h H
o bien
DECLARE @database\_scoped\_configurations TABLE(x INT);
INSERTAR EN @database\_scoped\_configurations
SELECCIONAR configuration_id
DE sys.database_scoped_configurations;
SELECCIONE * DESDE @database\_scoped\_configurations
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".
Resolución
Este problema se corrige en la siguiente actualización acumulativa para SQL Server:
Acerca de las actualizaciones acumulativas para SQL Server:
Cada nueva actualización acumulativa para SQL Server contiene todas las revisiones y correcciones de seguridad que se incluyeron con la actualización acumulativa anterior. Consulte las actualizaciones acumulativas más recientes para SQL Server:
Solución alternativa
Para solucionar este problema, puede agregar una cláusula TOP en la parte SELECT de la tabla de inserción para obtener el resultado correcto. Aquí tiene un ejemplo:
DECLARE @database_scoped_configurations TABLE(x INT);
INSERTAR EN @database_scoped_configurations
SELECCIONAR LAS 100 configuration_id PRINCIPALES
DESDE sys.database_scoped_configurations
Referencias
Obtenga información sobre la terminología que usa Microsoft para describir las actualizaciones de software.