In SQL Server ist der ANSI_NULLS
Mit der Einstellung können Sie angeben, wie NULL
Werte werden in Abfragen behandelt.
Sie können die SESSIONPROPERTY()
verwenden Funktion, um die ANSI_NULLS
zu überprüfen Einstellung für die aktuelle Sitzung.
Beispiel
Hier ist ein Beispiel zur Veranschaulichung.
SELECT SESSIONPROPERTY('ANSI_NULLS');
Ergebnis:
+--------------------+ | (No column name) | |--------------------| | 1 | +--------------------+
In diesem Fall der ANSI_NULLS
Einstellung für meine Sitzung ist ON
.
Sie können es auf OFF
setzen mit folgendem Code:
SET ANSI_NULLS OFF;
Wenn Sie es dann erneut überprüfen, wird eine Null erzeugt (bedeutet OFF
).
SELECT SESSIONPROPERTY('ANSI_NULLS');
Ergebnis:
+--------------------+ | (No column name) | |--------------------| | 0 | +--------------------+
Der Standardwert für SET ANSI_NULLS
ist OFF
.
Der SQL Server Native Client-ODBC-Treiber und der SQL Server Native Client-OLE DB-Anbieter für SQL Server legen jedoch automatisch ANSI_NULLS
fest auf ON
beim Verbinden. Diese Einstellung kann in ODBC-Datenquellen, in ODBC-Verbindungsattributen oder in OLE DB-Verbindungseigenschaften konfiguriert werden, die in der Anwendung festgelegt werden, bevor eine Verbindung zu einer Instanz von SQL Server hergestellt wird.
ANSI_NULLS
werden auch auf Datenbankebene angegeben. Ihre Sitzungseinstellung überschreibt jedoch die Einstellung auf Datenbankebene. Wenn SET ANSI_NULLS
nicht angegeben ist, die Einstellung des ANSI_NULLS
Option der aktuellen Datenbank gilt.