如何在 SQL Server 中检查会话的ANSI_NULLS设置

发布于

在 SQL Server 中,该设置允许您指定如何在查询中处理值。ANSI_NULLS``NULL

您可以使用该函数检查当前会话的设置。SESSIONPROPERTY()``ANSI_NULLS

示例

下面是一个要演示的示例。

SELECT SESSIONPROPERTY('ANSI_NULLS');

输出:

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

在本例中,我的会话设置为 。ANSI_NULLS``ON

您可以使用以下代码将其设置为 :OFF

SET ANSI_NULLS OFF;

然后再次检查它将产生一个零(意思)。OFF

SELECT SESSIONPROPERTY('ANSI_NULLS');

输出:

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

的缺省值为 。SET ANSI_NULLS``OFF

但是,SQL Server 本机客户端 ODBC 驱动程序和 SQL Server 本机客户端 OLE DB 提供程序在连接时自动设置为 。在连接到 SQL Server 实例之前,可以在应用程序中设置的 ODBC 数据源、ODBC 连接属性或 OLE DB 连接属性中配置此设置。ANSI_NULLS``ON

ANSI_NULLS也在数据库级别指定。但是,会话设置将覆盖数据库级别设置。如果未指定,则应用当前数据库的选项设置。SET ANSI_NULLS``ANSI_NULLS