Typy dziesiętne MySql są nieco bardziej skomplikowane niż tylko z lewej i prawej strony kropki dziesiętnej.
Pierwszy argument to precyzja , czyli całkowita liczba cyfr. Drugi argument to skala czyli maksymalna liczba cyfr po prawej stronie przecinka dziesiętnego.
Zatem (4,2) może wynosić od -99.99 do 99.99 .
Dlaczego otrzymujesz 99.99 zamiast pożądanego 3.80 , wartość, którą wstawiasz, musi być interpretowana jako większa niż 99.99 , więc używana jest wartość maksymalna. Może mógłbyś opublikować kod, którego używasz do wstawiania lub aktualizowania tabeli.
Edytuj
Poprawiono niezrozumienie użycia skali i precyzji, na http ://dev.mysql.com/doc/refman/5.0/en/typy-numeryczne.html .