Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
Azure Synapse Analytics
Elemzési platformrendszer (PDW)
SQL Analytics-végpont a Microsoft Fabricben
Raktár a Microsoft Fabricben
SQL-adatbázis a Microsoft Fabricben
Szabályozza, hogy a hibaüzenetek visszatérnek-e a túlfolyó vagy nullával osztott hibák során a lekérdezés során.
Transact-SQL szintaxis konvenciók
Szemantika
-- Syntax for SQL Server and Azure SQL Database and Microsoft Fabric
SET ARITHIGNORE { ON | OFF }
-- Syntax for Azure Synapse Analytics and Parallel Data Warehouse
SET ARITHIGNORE OFF
Megjegyzés:
Ezt a szintaxist az Azure Synapse Analytics kiszolgáló nélküli SQL-készlete nem támogatja.
Megjegyzések
A SET ARITHIGNORE beállítás csak azt szabályozza, hogy visszaküldjük-e hibaüzenet. Az SQL Server NULL-t ad vissza egy olyan számításban, amely túlcsordulás vagy nullával osztó hibát tartalmaz, függetlenül ettől a beállítástól. A SET ARITHABORT beállítás segítségével meghatározható, hogy a lekérdezés lezárt-e. Ez a beállítás nem befolyásolja az INSERT, UPDATE és DELETE utasítások során előforduló hibákat.
Ha a SET ARITHABORT vagy SET ARITHIGNORE KIKAPCSOLT és a SET ANSI_WARNINGS BEKAPCSOLVA, az SQL Server továbbra is hibaüzenetet ad vissza, ha nullával osztó vagy túlcsordulás hibákkal találkozik.
A SET ARITHIGNORE beállítása végrehajtási vagy futási időben van beállítva, nem parse időben.
A jelenlegi beállítás megtekintéséhez futtasd le a következő lekérdezést.
DECLARE @ARITHIGNORE VARCHAR(3) = 'OFF';
IF ( (128 & @@OPTIONS) = 128 ) SET @ARITHIGNORE = 'ON';
SELECT @ARITHIGNORE AS ARITHIGNORE;
Permissions
A nyilvános szerepkörhöz tagságra van szükség.
Példák
A következő példa mindkét SET ARITHIGNORE beállítást használja mindkét típusú lekérdezési hibával.
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
Példák: Azure Synapse Analytics and Analytics Platform System (PDW)
A következő példa bemutatja a nullával való osztást és a túlcsordulási hibákat. Ez a példa nem ad hibaüzenetet ezekre a hibákra, mert az ARITHIGNORE KIKAPCSOLVA.
-- SET ARITHIGNORE OFF and testing.
SET ARITHIGNORE OFF;
SELECT 1 / 0 AS DivideByZero;
SELECT CAST(256 AS TINYINT) AS Overflow;
Lásd még:
SET-utasítások (Transact-SQL)
ARITHABORT BEÁLLÍTÁSA (Transact-SQL)