DBAtlas · Veritabanı operasyon atlası

8134: Divide by zero error encountered

SQL Server

Ne demek?

Bir aritmetik ifadede bölen sıfır olduğu için sıfıra bölme hatası oluştu. SQL Server bölmeyi tamamlayamaz ve sorguyu durdurur.

Neden olur?

Bölen olarak kullanılan sütun veya ifadenin 0 değeri alması, ortalama/oran hesaplarında paydanın sıfır olması, NULLIF kullanılmadan sabit bir değere bölme veya beklenmedik sıfır veriler.

Nasıl çözülür?

Paydayı NULLIF ile koruyun (ör. deger / NULLIF(payda, 0)); sonuç NULL olur, ISNULL/COALESCE ile varsayılan verilebilir. CASE WHEN payda = 0 THEN NULL ELSE deger/payda END kullanın. Bölmeden önce WHERE ile sıfır değerleri filtreleyin. Gerekiyorsa SET ARITHABORT/ANSI_WARNINGS davranışını değerlendirin.

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar