[SQL Serveur] Connaissez-vous le type Numeric(p,s) ?

Vous connaissez tous les types INT ou BIGINT pour stocker des entiers.

Vous connaissez le type FLOAT pour stocker des valeurs arrondis de décimaux.

Par contre le type NUMERIC(p,s) et le type DECIMAL(p,s) sont moins connus.

Ils permettent de stocker des valeurs entières ou décimales avec précision.

Ce sont les types à utiliser de préférence dans une application financière

PowerAMC les utilisent pour générer ces identity!

La première valeur p indique nombre maximal de digit qui peut être stocké. Avec une valeur maximale de 38 digits( 10^38 )

La valeur s indique le nombre de chiffres après la virgules.

Exemple: Pour stocker un entier de 0 à +/- 9999 : NUMERIC(4,0).

Exemple : Pour stocker un décimal de 0 à +/- 99,99 : DECIMAL(4,2).

Il semble que NUMERIC(p,s) et DECIMAL(p,s) soient des synonymes. Je recommande NUMERIC(p,0) pour les entiers et DECIMAL(p,s) pour les réels.

La norme SQL recommande d’ utiliser un synonyme que SQL Serveur accepte : DEC(p,s).

Laisser un commentaire