Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:punto de conexión de SQL Server Azure SQL Instancia administrada
el punto de conexión de SQL Analytics Analytics Platform System (PDW) de SQL Analytics system (PDW)
de SQL Server en Microsoft Fabric
Warehouse en Microsoft Fabric
Determina si los resultados de la concatenación se tratan como valores NULL o como valores de cadena vacía.
Nota:
SET CONCAT_NULL_YIELDS_NULL OFF y la CONCAT_NULL_YIELDS_NULL opción de base de datos OFF están obsoletas. A partir de SQL Server 2017 (14.x), CONCAT_NULL_YIELDS_NULL siempre está configurado en ON. Las características en desuso no se deben usar en nuevas aplicaciones. Para obtener más información, vea Características de Motor de base de datos en desuso en SQL Server 2017.
Convenciones de sintaxis de Transact-SQL
Sintaxis
Sintaxis de SQL Server y un grupo de SQL sin servidor en Azure Synapse Analytics, Microsoft Fabric
SET CONCAT_NULL_YIELDS_NULL { ON | OFF }
Sintaxis para Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)
SET CONCAT_NULL_YIELDS_NULL ON
Comentarios
Cuando SET CONCAT_NULL_YIELDS_NULL está ON, concatenar un valor nulo con una cadena da un resultado NULL. Por ejemplo, SELECT 'abc' + NULL produce NULL. Cuando SET CONCAT_NULL_YIELDS_NULL está OFF, concatenar un valor nulo con una cadena da lugar a la cadena en sí (el valor nulo se trata como una cadena vacía). Por ejemplo, SELECT 'abc' + NULL produce abc.
Si SET CONCAT_NULL_YIELDS_NULL no se especifica, se aplica la opción de configuración de la CONCAT_NULL_YIELDS_NULL base de datos.
Nota:
SET SET CONCAT_NULL_YIELDS_NULL es el mismo ajuste que el CONCAT_NULL_YIELDS_NULL de ALTER DATABASE.
El valor de se establece en tiempo de SET CONCAT_NULL_YIELDS_NULL ejecución o ejecución y no en tiempo de análisis.
SET CONCAT_NULL_YIELDS_NULL debe estar ON al crear o modificar vistas indexadas, índices en columnas calculadas, índices filtrados o índices espaciales. Si SET CONCAT_NULL_YIELDS_NULL está OFF, cualquier sentencia CREATE, UPDATE, INSERT, y DELETE en tablas con índices en columnas calculadas, índices filtrados, índices espaciales o vistas indexadas fallarán. Para más información sobre la configuración de opciones requerida SET con vistas y índices indexados en columnas calculadas, consulte "Consideraciones al usar las SET sentencias" en SET Sentencias (Transact-SQL).
Cuando CONCAT_NULL_YIELDS_NULL está configurado en OFF, la concatenación de cadenas a través de los límites del servidor no puede ocurrir.
Para ver la configuración actual de este valor, ejecute la consulta siguiente.
DECLARE @CONCAT_SETTING VARCHAR(3) = 'OFF';
IF ( (4096 & @@OPTIONS) = 4096 ) SET @CONCAT_SETTING = 'ON';
SELECT @CONCAT_SETTING AS CONCAT_NULL_YIELDS_NULL;
Ejemplos
En el ejemplo siguiente se muestra el uso de los dos valores de SET CONCAT_NULL_YIELDS_NULL.
PRINT 'Setting CONCAT_NULL_YIELDS_NULL ON';
GO
-- SET CONCAT_NULL_YIELDS_NULL ON and testing.
SET CONCAT_NULL_YIELDS_NULL ON;
GO
SELECT 'abc' + NULL ;
GO
-- SET CONCAT_NULL_YIELDS_NULL OFF and testing.
SET CONCAT_NULL_YIELDS_NULL OFF;
GO
SELECT 'abc' + NULL;
GO