Да, типовете Oracle NUMBER са точни. Те са по-скоро като цели числа със скала, отколкото типове float/double. Така че NUMBER(10,3) има 10 цифри, 3 след десетичната запетая, което всъщност е 10-цифрено цяло число със скала 3. Всъщност точно така работят Java BigDecimals (като BigInteger плюс вътрешна скала).