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
A SET ARITHIGNORE beállítás szabályozza, hogy a lekérdezés aritmetikai túlcsordulás vagy nullával osztó hibák esetén is visszaad-e hibaüzeneteket. A SET ARITHIGNORE ON beállítás elnyomja azokat az üzeneteket: "Nullával osztás történt." vagy "Aritmetikai túlcsordulás történt."
Transact-SQL szintaxis konvenciók
Szemantika
Szintaxis SQL Server, Azure SQL Database, Microsoft Fabric Data Warehouse, SQL adatbázisokhoz Microsoft Fabric
SET ARITHIGNORE { ON | OFF }
Az Azure Synapse Analytics and Analytics Platform System (PDW) szintaxisa
SET ARITHIGNORE OFF
Megjegyzések
- Ha mind
SET ARITHABORTaz aritmetikaiSET ANSI_WARNINGSOFFhiba előfordul, akkor figyelmeztető üzenet jelenik meg, amikorSET ARITHIGNORE,OFFés az aritmetikai művelet eredményeNULL. - Ha mind
SET ARITHABORTaz aritmetikaiOFFSET ANSI_WARNINGShiba előfordul, akkor nem jelenik meg figyelmeztető üzenet, haSET ARITHIGNORE,ONés az aritmetikai művelet eredményeNULL.
A ARITHIGNORE beállítás csak azt szabályozza, hogy a lekérdezés hibaüzenetet ad-e. Az SQL Database Engine olyan számításban jelenik NULL meg, amely túlcsordulást vagy nullával osztó hibát tartalmaz, függetlenül ettől a beállítástól. Ez a beállítás nem befolyásolja azokat a hibákat, amelyek , INSERTUPDATE, és DELETE állítások alatt fordulnak elő.
Ha vagy SET ARITHABORTSET ARITHIGNORE vagy , OFFés SET ANSI_WARNINGS , ONa lekérdezés akkor is hibaüzenetet ad vissza, ha nullával osztó vagy túlcsorduló hibákkal találkozik. Amikor ANSI_WARNINGS is ON (az alapértelmezett állapot), a beállításnak ARITHABORT nincs funkcionális hatása.
A SET ARITHIGNORE beállítása végrehajtáskor vagy futtatáskor van beállítva, és nem elemzési időpontban.
Ezt a szintaxist az Azure Synapse Analytics kiszolgáló nélküli SQL-készlete nem támogatja.
Nézze meg a jelenlegi beállítást ARITHIGNORE
A jelenlegi beállítás ARITHIGNOREmegtekintéséhez futtassuk a következő T-SQL lekérdezést.
DECLARE @ARITHIGNORE VARCHAR(3) = 'OFF';
IF ( (128 & @@OPTIONS) = 128 ) SET @ARITHIGNORE = 'ON';
SELECT @ARITHIGNORE AS ARITHIGNORE;
Permissions
A nyilvános szerepkör tagságát igényli.
Példák
Az alábbi példa mindkét SET ARITHIGNORE beállítást használ mindkét típusú lekérdezési hibával: nullával osztó és aritmetikai túlcsordulás.
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 osztó arányt és a túlfolyó hibákat. Ez a példa nem ad vissza hibaüzenetet ezekre a hibákra, mert ARITHIGNORE .OFF
-- SET ARITHIGNORE OFF and testing.
SET ARITHIGNORE OFF;
SELECT 1 / 0 AS DivideByZero;
SELECT CAST(256 AS TINYINT) AS Overflow;