No, to je ten problém, datový typ. Podle dokumentů :
Syntaxe deklarace pro sloupec DECIMAL je DECIMAL(M,D). Rozsahy hodnot pro argumenty v MySQL 5.6 jsou následující:
M je maximální počet číslic (přesnost). Má rozsah 1 až 65. (Starší verze MySQL umožňovaly rozsah 1 až 254.)
D je počet číslic napravo od desetinné čárky (měřítko). Má rozsah 0 až 30 a nesmí být větší než M.
Takže vaše DECIMAL(5,2)
typ sloupce může obsahovat čísla až do 999.99
. Budete muset upravit tabulku a zvětšit sloupec.
(Pokud jde o to, proč MySQL upřednostňuje poškození vašich dat před jejich hlášením, dobře, to byla její filozofie od prvních let. Můžete si hrát s Režimy SQL to opravit.)