Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: SQL Server
Управляемый экземпляр SQL Azure
конечную точку аналитики платформы Аналитики Azure Synapse Analytics (PDW)
в хранилище Microsoft Fabric
в Microsoft Fabric
Управляет представлением результатов объединения в виде значений NULL или пустых строковых значений.
Примечание.
SET CONCAT_NULL_YIELDS_NULL OFF и CONCAT_NULL_YIELDS_NULL опция базы данных OFF устарели. Начиная с SQL Server 2017 (14.x), CONCAT_NULL_YIELDS_NULL он всегда настроен на ON. Не следует использовать нерекомендуемые возможности в новых приложениях. Дополнительные сведения см. в статье об устаревших функциях ядро СУБД в SQL Server 2017.
Соглашения о синтаксисе Transact-SQL
Синтаксис
Синтаксис для SQL Server, бессерверный пул SQL в Azure Synapse Analytics, Microsoft Fabric
SET CONCAT_NULL_YIELDS_NULL { ON | OFF }
Синтаксис для Системы платформы Azure Synapse Analytics и Analytics (PDW)
SET CONCAT_NULL_YIELDS_NULL ON
Замечания
Когда SET CONCAT_NULL_YIELDS_NULL ВКЛЮЧЕНО, объединение нулевого значения со строкой даёт результат NULL. Например, SELECT 'abc' + NULL дает в результате NULL. Когда SET CONCAT_NULL_YIELDS_NULL OFF, объединение нулевого значения со строкой даёт саму строку (null value рассматривается как пустая строка). Например, SELECT 'abc' + NULL дает в результате abc.
Если SET CONCAT_NULL_YIELDS_NULL не указано, применяется опция базы CONCAT_NULL_YIELDS_NULL данных.
Примечание.
SET SET CONCAT_NULL_YIELDS_NULLявляется той же установкой, что и CONCAT_NULL_YIELDS_NULL настройка .ALTER DATABASE
Параметр SET CONCAT_NULL_YIELDS_NULL устанавливается во время выполнения или выполнения, а не во время синтаксического анализа.
SET CONCAT_NULL_YIELDS_NULL должно быть включено при создании или изменении индексированных представлений, индексов на вычисленных столбцах, фильтрованных или пространственных индексах. Если SET CONCAT_NULL_YIELDS_NULLOFF, любые CREATE, UPDATE, INSERT, и DELETE операторы в таблицах с индексами в вычисленных столбцах, фильтрованных, пространственных или индексированных представлениях не будут выполнены. Для получения дополнительной информации о необходимых SET настройках опций с индексированными видами и индексами на вычисленных столбцах см. раздел «Соображения при использовании SET операторов» в SET разделе Операторы (Transact-SQL).
При CONCAT_NULL_YIELDS_NULL установке OFF конкатенация строк через границы сервера не может произойти.
Чтобы просмотреть текущее значение для этого параметра, выполните следующий запрос.
DECLARE @CONCAT_SETTING VARCHAR(3) = 'OFF';
IF ( (4096 & @@OPTIONS) = 4096 ) SET @CONCAT_SETTING = 'ON';
SELECT @CONCAT_SETTING AS CONCAT_NULL_YIELDS_NULL;
Примеры
Следующий пример демонстрирует использование обеих настроек 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