Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come controllare l'impostazione ANSI_NULLS della sessione in SQL Server

In SQL Server, il ANSI_NULLS l'impostazione consente di specificare come NULL i valori vengono trattati nelle query.

Puoi utilizzare SESSIONPROPERTY() funzione per controllare il ANSI_NULLS impostazione per la sessione corrente.

Esempio

Ecco un esempio da dimostrare.

SELECT SESSIONPROPERTY('ANSI_NULLS');

Risultato:

+--------------------+
| (No column name)   |
|--------------------|
| 1                  |
+--------------------+

In questo caso, il ANSI_NULLS l'impostazione per la mia sessione è ON .

Puoi impostarlo su OFF con il seguente codice:

SET ANSI_NULLS OFF;

Quindi controllarlo di nuovo produrrà uno zero (che significa OFF ).

SELECT SESSIONPROPERTY('ANSI_NULLS');

Risultato:

+--------------------+
| (No column name)   |
|--------------------|
| 0                  |
+--------------------+

Il valore predefinito per SET ANSI_NULLS è OFF .

Tuttavia, il driver ODBC di SQL Server Native Client e il provider OLE DB di SQL Server Native Client per SQL Server impostano automaticamente ANSI_NULLS su ON durante la connessione. Questa impostazione può essere configurata nelle origini dati ODBC, negli attributi di connessione ODBC o nelle proprietà di connessione OLE DB impostate nell'applicazione prima della connessione a un'istanza di SQL Server.

ANSI_NULLS sono specificati anche a livello di database. Tuttavia, l'impostazione della sessione sovrascrive l'impostazione a livello di database. Se SET ANSI_NULLS non è specificato, l'impostazione di ANSI_NULLS si applica l'opzione del database corrente.