8134: Divide by zero error encountered (erreur de division par zéro)
SQL ServerQue signifie cette erreur ?
Une erreur de division par zéro s'est produite, car le diviseur d'une expression arithmétique est nul. SQL Server ne peut pas effectuer la division et arrête la requête.
Cause
Colonne ou expression utilisée comme diviseur valant 0, dénominateur nul dans des calculs de moyenne/de ratio, division sans NULLIF, ou valeurs nulles inattendues dans les données.
Comment la corriger
Protégez le dénominateur avec NULLIF (par ex. value / NULLIF(denominator, 0)) ; le résultat devient NULL et une valeur par défaut peut être fournie avec ISNULL/COALESCE. Utilisez CASE WHEN denominator = 0 THEN NULL ELSE value/denominator END. Filtrez les valeurs nulles avec WHERE avant la division. Si nécessaire, évaluez le comportement de SET ARITHABORT/ANSI_WARNINGS.
Autres entrées pour ce moteur
- 701There is insufficient system memory in resource pool to run this query (mémoire système insuffisante dans le pool de ressources)
- 845Time-out occurred while waiting for buffer latch (délai expiré en attente d'un latch de buffer)
- 3201Cannot open backup device. Operating system error (backup device error) (impossible d'ouvrir l'unité de sauvegarde)
- 245Conversion failed when converting the value to data type (échec de la conversion vers le type de données)
- 515Cannot insert the value NULL into column (insertion de la valeur NULL impossible dans la colonne)
- 8115Arithmetic overflow error converting expression to data type (erreur de dépassement arithmétique lors de la conversion)
- 512Subquery returned more than 1 value (la sous-requête a renvoyé plus d'une valeur)