Pazi, decimal nije floating point, kao sto ni money to nije, decimal je broj sa fiksnim zarezom i interno se drugacije skladisti nego float i kad se radi implicitna konverzija iz float u decimal dolazi do nekog gubitka preciznosti. Medjutim to je marginalno i ovo mi je veoma neverovatno:
Citat:
Pazi ja jesam postavio polje u SQL 2005 npr. decimal(5,2) i u njega sam insertovao npr. broj 13.24567, ali mi on u tabeli upise vrednost 13.24
upravo sam probao ovo kod sebe i na sql2005 i 2008 i na oba je upisao 13.25. Mozda je tebi problem u klijentu koji koristis koji neispravno zaokruzi broj pre nego ga posalje sql serveru? Probaj iz management studia direktno... Sql server koristi roundup mehanizam za zaokruzivanje (slicno kao onaj sto ucismo u skoli samo sto se ne gleda parnost poslednje cifre vec se takav ostatak uvek zaokruzuje na gore, R(1.5) = 2, R(2.5) = 3), th mozda si ti ocekivao da 13.245 zaokruzi na 13.24?
Citat:
bigguy: Nikad se nezna kada ce mi kasnije zatrebati korisnikov podatak. Molim te samo ako moze malo detaljnije objasnjenje jer, kako sam vec naveo, sa bazama nisam radio puno sem definisanja tabela i tome slicno.
Ovo treba da ti zavisi od toga sta zapravo skladistis u tom polju. AKo su to iznosi stavki onda ih drzi zaokruzene zbog agregacije, SUM(ROUND) nije isto sto i ROUND(SUM) zbog parcijalnih ostataka i ovo je cest uzrok zasto u nekim programima na fakturama stavke sabrane zajedno digitronom ne daju total vec se razlikuju za poneku paru. Dakle, da bi ti bilo ko preporucio sta ti je bojle moramo da znamo sta je to sto zaokruzujes...
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić