Les types décimaux MySql sont un peu plus compliqués que juste à gauche et à droite du point décimal.
Le premier argument est la précision , qui est le nombre total de chiffres. Le deuxième argument est l'échelle qui est le nombre maximum de chiffres à droite de la virgule décimale.
Ainsi, (4,2)
peut être n'importe quoi de -99.99
à 99.99
.
Quant à savoir pourquoi vous obtenez 99.99
au lieu du 3.80
souhaité , la valeur que vous insérez doit être interprétée comme supérieure à 99.99
, donc la valeur max est utilisée. Peut-être pourriez-vous publier le code que vous utilisez pour insérer ou mettre à jour le tableau.
Modifier
Correction d'un malentendu sur l'utilisation de l'échelle et de la précision, selon http ://dev.mysql.com/doc/refman/5.0/en/numeric-types.html .