sql >> Databáze >  >> RDS >> Sqlserver

Aritmetická chyba přetečení při převodu numerického na datový typ numerický

Hádám, že se do svých desetinných polí snažíte vtěsnat číslo větší než 99999,99. Změnou na (8,3) se nic neprovede, pokud je větší než 99999,999 – musíte zvýšit počet číslic před desetinné číslo. Můžete to provést zvýšením přesnosti (což je celkový počet číslic před a za desetinnou čárkou). Měřítko můžete ponechat stejné, pokud nepotřebujete změnit počet desetinných míst k uložení. Zkuste decimal(9,2) nebo decimal(10,2) nebo cokoliv jiného.

Můžete to vyzkoušet zakomentováním insert #temp a podívejte se, jaká čísla vám dává příkaz select, a zjistěte, zda jsou větší, než váš sloupec zvládne.



  1. Musím používat HTML Purifier, když odstraňujem značky/převádím je na HTML entity?

  2. částečné vyhledávání slov mysql

  3. PDO::FETCH_OBJ php

  4. Algoritmus pro výběr nejoblíbenějších míst z databáze