Oui, les types Oracle NUMBER sont précis. Ils ressemblent plus à des entiers avec une échelle qu'à des types float/double. Ainsi, un NUMBER(10,3) a 10 chiffres, 3 après la virgule décimale, qui est en réalité un entier à 10 chiffres avec une échelle de 3. En fait, c'est précisément le fonctionnement de Java BigDecimals (étant un BigInteger plus une échelle en interne).