SET CONCAT_NULL_YIELDS_NULL (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics-végpont a Microsoft FabricWarehouse-ban a Microsoft Fabric

Szabályozza, hogy az összekötés eredményei null vagy üres stringértékként kezelhetők-e.

Note

SET CONCAT_NULL_YIELDS_NULL OFF és az CONCAT_NULL_YIELDS_NULL OFF adatbázis opció elavult. Az SQL Server 2017-től (14.x) kezdve CONCAT_NULL_YIELDS_NULL mindig ON-ra van állítva. Az elavult funkciókat nem szabad használni az új alkalmazásokban. További információ: Elavult adatbázismotor-funkciók az SQL Server 2017-ben.

Transact-SQL szintaxis konvenciók

Syntax

Syntax for SQL Server, serverless SQL pool in Azure Synapse Analytics, Microsoft Fabric

SET CONCAT_NULL_YIELDS_NULL { ON | OFF }   

Az Azure Synapse Analytics and Analytics Platform System (PDW) szintaxisa

SET CONCAT_NULL_YIELDS_NULL ON    

Remarks

Amikor SET CONCAT_NULL_YIELDS_NULL ON, null értéket egy stringgel összekapcsolva NULL eredményt adunk. Például a SELECT 'abc' + NULLNULL. Amikor SET CONCAT_NULL_YIELDS_NULL OFF, egy null értéket egy stringgel összekapcsolva maga a string kap (a null értéket üres stringként kezelik). Például a SELECT 'abc' + NULLabc.

Ha SET CONCAT_NULL_YIELDS_NULL nincs megadva, akkor az adatbázis opció beállítása CONCAT_NULL_YIELDS_NULL érvényes.

Note

SET SET CONCAT_NULL_YIELDS_NULLugyanaz a beállítás, mint CONCAT_NULL_YIELDS_NULL a .ALTER DATABASE

A SET CONCAT_NULL_YIELDS_NULL beállítása végrehajtáskor vagy futtatáskor van beállítva, és nem elemzési időpontban.

SET CONCAT_NULL_YIELDS_NULL be kell kapcsolni, amikor indexelt nézeteket, számolt oszlopokon lévő indexeket, szűrt indexeket vagy térbeli indexeket hoznak létre vagy módosítanak. Ha SET CONCAT_NULL_YIELDS_NULLOFF, bármely CREATE, UPDATE, INSERT, és DELETE állítások olyan táblázatokon vannak, amelyek indexei számítottak oszlopokon, szűrt indexeken, térbeli indexeken vagy indexelt nézeteken, meghibásodik. További információért az SET indexelt nézetekhez és a számított oszlopokon lévő indexekhez szükséges opcióbeállításokról a "Szempontok az állítások használatakorSET" részben található "Megfontolások" (Transact-SQL) részbenSET.

Ha CONCAT_NULL_YIELDS_NULL OFF-ra van állítva, a sorok összekötése nem történhet a szerver határain keresztül.

A jelenlegi beállítás megtekintéséhez futtasd le a következő lekérdezést.

DECLARE @CONCAT_SETTING VARCHAR(3) = 'OFF';  
IF ( (4096 & @@OPTIONS) = 4096 ) SET @CONCAT_SETTING = 'ON';  
SELECT @CONCAT_SETTING AS CONCAT_NULL_YIELDS_NULL; 

Examples

A következő példa mindkét SET CONCAT_NULL_YIELDS_NULL beállítást bemutatja.

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