décimal (s, p) ou nombre (s, p)?
récemment, en travaillant sur une base de données db2 -> oracle projet de migration, nous sommes tombés sur cette situation.
les développeurs ont été, par inadvertance, la création de nouvelles structures de la table à l'aide de décimal(s,p) colonnes. Je n'ai pas souvenir d'Oracle soutenir cela, mais ensuite, quelques recherches ont montré que c'est un type de données ANSI donc pris en charge par oracle.
Cependant, la question pour moi est resté -
- comment est-ce des données traitées en interne ?
- est-il un coût d'utilisation de types ANSI au lieu de l'Oracle construit en types ?
- Aura-t-il un impact au cours de la migration des données si le type de cible a été Oracle type intégré ?
source d'informationauteur Gyan
Vous devez vous connecter pour publier un commentaire.
Dans Oracle, ils sont les mêmes:
Le tableau ci-dessous cette citation montre que
DECIMAL(p,s)
est traitée en interne comme unNUMBER(p,s)
:Cependant, l'échelle par défaut est 0 pour
DECIMAL
ce qui signifie queDECIMAL(*)
est traitée commeNUMBER(*, 0)
c'est à direINTEGER
:En fait, il existe une différence entre la virgule et le nombre.
Décimal tronque la valeur qui est plus de l'échelle, le nombre rond de la valeur.