Udostępnij za pośrednictwem


SET CONCAT_NULL_YIELDS_NULL (Transact-SQL)

Określa, czy łączenie wyniki są traktowane jako wartości null ani ciągiem pustym.

Important noteImportant Note:

W przyszłych wersjach SQL Server CONCAT_NULL_YIELDS_NULL zawsze będzie ON i aplikacji, to jawnie zestaw opcję OFF spowoduje wystąpienie błędu. Należy unikać stosowania tej funkcji w nowych projektach oraz zaplanować modyfikację aplikacji, w których obecnie jest używana ta funkcja.

Topic link iconKonwencje składni języka Transact-SQL

SET CONCAT_NULL_YIELDS_NULL { ON | OFF } 

Remarks

Gdy CONCAT_NULL_YIELDS_NULL zestaw jest włączone, łączenia wartości null z ciąg daje w wyniku wartość NULL.Na przykład SELECT 'abc' + NULL daje w wyniku NULL. Gdy CONCAT_NULL_YIELDS_NULL zestaw jest wyłączona, łączenia wartości null ciągiem daje w wyniku ciąg sam (wartość null jest traktowana jako pusty ciąg).Na przykład SELECT 'abc' + NULL daje w wyniku abc.

Jeżeli nie określono CONCAT_NULL_YIELDS zestaw, ustawienie CONCAT_NULL_YIELDS_NULL bazy danych opcja ma zastosowanie.

Uwaga

zestaw CONCAT_NULL_YIELDS_NULL jest takie samo ustawienie jako ustawienie CONCAT_NULL_YIELDS_NULL ALTER DATABASE.

Ustawiono zestaw CONCAT_NULL_YIELDS_NULL na wykonać lub uruchomić czas, a nie w czasie analizowania.

zestaw CONCAT_NULL_YIELDS_NULL musi być włączone, podczas tworzenia lub zmieniania indeksów dla kolumny obliczanej lub widoków indeksowanych.Jeśli CONCAT_NULL_YIELDS_NULL zestaw jest wyłączona, wszelkie CREATE, UPDATE, INSERT i DELETE instrukcji na tabelach z indeksów dla kolumny obliczanej lub widoków indeksowanych nie powiedzie się.Aby uzyskać więcej informacji dotyczących wymaganych ustawień opcji zestaw z widoków indeksowanych i indeksów na kolumny obliczane zobacz "Zagadnienia podczas podczas Użyj zestaw deklaracji" w SET (Transact-SQL).

Gdy CONCAT_NULL_YIELDS_NULL ma wartość OFF, ciąg łączenie poza granicami serwera nie może być.

Przykłady

Następujące pokazywanie przykładu za pomocą obu SET CONCAT_NULL_YIELDS_NULL ustawienia.

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