mat05
21.12.2006, 01:28:29
Witam,
gdy chcę zmienić poprzez mysql dane w bazie (a nawet RĘCZNIE!) to dziwnym trafem jest jakiś błąd.
Przykład: zmieniam wartość "suma" na 131100.29 a potem widze, że jest...131100.00 (czyli po kropce zmienia sie z 29 na 00). Dlaczego tak jest?
Typ pola, gdzie są zmieniane wartości to FLOAT.
Z góry dzięki za odp,
Mat
Domin
21.12.2006, 01:47:29
tak na szybko to wydaje mi się że typ jest błędny, gdyż odnosi się on do liczb całkowitych i uniemożliwia stosowanie liczb po przecinku, zmień typ komórki. Jeśli zmienisz typ np. na VARCHAR, musi być dobrze...
dr_bonzo
21.12.2006, 09:31:32
Tak sie floaty zachowuja -- nie zawsze mozna dokladnie zareprezentowac za ich pomoca liczbe rzeczywista, np. 0.5 da sie, 0.33 juz nie. Dodatkowo masz bardzo dluga liczbe (8 cyfr) float obsluguje je dokladnie do ok 7 cyfr (23 bity). Uzyj DECIMAL() jesli "chodzi o pieniadze"

Przenosze php -> Mysql
heaven
21.12.2006, 10:52:21
Uzyj typu DOUBLE
mat05
21.12.2006, 14:21:28
Dzięki wielkie!

Użyłem DOUBLE i działa THE BEST!
THX
dr_bonzo
21.12.2006, 20:51:14
DOUBLE zachowuje sie jak FLOAT tyle ze dobpiero przy duzo dluzszych liczbach
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.