Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS SQL Server > Как можно с помощью скрипта узнать SET ANSI_NULLS


Автор: lv151 4.2.2013, 14:29
Пробую так:
 
Код

SELECT DATABASEPROPERTYEX('base_name', 'IsAnsiNullsEnabled')


На разных базах одинаково 0, но 

Код

CREATE TABLE #t1 (a INT NULL);
INSERT INTO #t1 values (NULL),(0),(1);
GO

-- Print message and perform SELECT statements.
SELECT 'Testing default setting';
DECLARE @varname int; 
SET @varname = NULL;

SELECT a
FROM #t1 
WHERE a = @varname;

SELECT a 
FROM #t1
WHERE a <> @varname;

SELECT a 
FROM #t1 
WHERE a IS NULL;
GO


SELECT 'Testing ANSI_NULLS ON';
SET ANSI_NULLS ON;
GO
DECLARE @varname int;
SET @varname = NULL

SELECT a 
FROM #t1 
WHERE a = @varname;

SELECT a 
FROM #t1 
WHERE a <> @varname;

SELECT a 
FROM #t1 
WHERE a IS NULL;
GO


SELECT 'Testing SET ANSI_NULLS OFF';
SET ANSI_NULLS OFF;
GO
DECLARE @varname int;
SET @varname = NULL;
SELECT a 
FROM #t1 
WHERE a = @varname;

SELECT a 
FROM #t1 
WHERE a <> @varname;

SELECT a 
FROM #t1
WHERE a IS NULL;
GO


DROP TABLE #t1;


отрабатывают по-разному.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)