MySql-decimaltyper är lite mer komplicerade än bara vänster om och höger om decimaltecknet.
Det första argumentet är precision , vilket är antalet totala siffror. Det andra argumentet är skala vilket är det maximala antalet siffror till höger om decimaltecknet.
Alltså (4,2)
kan vara allt från -99.99
till 99.99
.
Angående varför du får 99.99
istället för önskad 3.80
, måste värdet du infogar tolkas som större än 99.99
, så maxvärdet används. Kanske kan du lägga upp koden som du använder för att infoga eller uppdatera tabellen.
Redigera
Rättade ett missförstånd av användningen av skala och precision, per http ://dev.mysql.com/doc/refman/5.0/en/numeric-types.html .