DBAtlas · Атлас эксплуатации баз данных

8134: Ошибка деления на ноль

SQL Server

Что это значит?

Произошла ошибка деления на ноль, поскольку делитель в арифметическом выражении равен нулю. SQL Server не может выполнить деление и останавливает запрос.

Почему возникает?

Столбец или выражение, используемые как делитель, равны 0, нулевой знаменатель при вычислении среднего/отношения, деление без NULLIF или неожиданные нулевые значения в данных.

Как исправить

Защищайте знаменатель с помощью NULLIF (например, value / NULLIF(denominator, 0)); результат становится NULL, а значение по умолчанию можно задать через ISNULL/COALESCE. Используйте CASE WHEN denominator = 0 THEN NULL ELSE value/denominator END. Отфильтруйте нулевые значения через WHERE перед делением. При необходимости оцените поведение SET ARITHABORT/ANSI_WARNINGS.

Открыть в DBAtlas →

Ещё по этой СУБД