SET ARITHIGNORE (Transact-SQL)
Осуществляет контроль возврата сообщения об ошибке при переполнении или делении на ноль во время выполнения запроса.
Синтаксис
SET ARITHIGNORE { ON | OFF }
[ ; ]
Замечания
Настройка SET ARITHIGNORE контролирует только возврат сообщения об ошибке. SQL Server в вычислении с переполнением или делением на ноль возвращает значение NULL, в независимости от данной настройки. Настройка SET ARITHABORT может использоваться для определения прекращения выполнения запроса. Эта настройка не влияет на ошибки, возникающие во время выполнения инструкций INSERT, UPDATE, и DELETE.
Если значение параметров SET ARITHABORT и SET ARITHIGNORE установлено в OFF, а значение параметра SET ANSI_WARNINGS установлено в ON, SQL Server возвращает сообщение об ошибке при обнаружении ошибок деления на ноль и переполнения.
Параметр настройки SET ARITHIGNORE устанавливается во время запуска или выполнения, но не во время синтаксического анализа.
Разрешения
Требуется членство в роли public.
Примеры
В следующем примере показано использование обеих настроек SET ARITHIGNORE для обоих типов ошибок запросов.
SET ARITHABORT OFF;
SET ANSI_WARNINGS OFF
GO
PRINT 'Setting ARITHIGNORE ON';
GO
-- SET ARITHIGNORE ON and testing.
SET ARITHIGNORE ON;
GO
SELECT 1 / 0 AS DivideByZero;
GO
SELECT CAST(256 AS TINYINT) AS Overflow;
GO
PRINT 'Setting ARITHIGNORE OFF';
GO
-- SET ARITHIGNORE OFF and testing.
SET ARITHIGNORE OFF;
GO
SELECT 1 / 0 AS DivideByZero;
GO
SELECT CAST(256 AS TINYINT) AS Overflow;
GO