SET ARITHIGNORE (Transact-SQL)

Controla si se devuelven mensajes de error al producirse errores de desbordamiento o división por cero durante una consulta.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

SET ARITHIGNORE { ON | OFF }
[ ; ]

Comentarios

La opción SET ARITHIGNORE sólo controla si se devuelve un mensaje de error. SQL Server devuelve NULL en un cálculo en que se invoca un error de desbordamiento o de división por cero con independencia de esta opción. La opción SET ARITHABORT se puede utilizar para determinar si la consulta ha finalizado o no. Esta opción no afecta a los errores producidos al ejecutar las instrucciones INSERT, UPDATE y DELETE.

Si SET ARITHABORT o SET ARITHIGNORE es OFF y SET ANSI_WARNINGS es ON, SQL Server devolverá un mensaje de error cuando haya errores de división por cero o desbordamiento.

La opción SET ARITHIGNORE se establece en tiempo de ejecución, no en tiempo de análisis.

Permisos

Debe pertenecer a la función public.

Ejemplos

En este ejemplo se muestran las dos opciones de SET ARITHIGNORE con ambos tipos de error de consulta.

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