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 temas Convenciones de sintaxis de Transact-SQL

Sintaxis

SET ARITHIGNORE { ON | OFF }
[ ; ]

Comentarios

La opción SET ARITHIGNORE solo 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

Requiere la pertenencia al rol public.

Ejemplos

En el ejemplo siguiente se muestran las dos opciones de SET ARITHIGNORE con ambos tipos de errores 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

Vea también

Referencia

Instrucciones SET (Transact-SQL)

SET ARITHABORT (Transact-SQL)