bonjour,
Vu que les champ type "numeric" ou "decimal" sont identiques:
Est ce qu'il est préférable pour des raisons de conventions ou de portabilité de prendre l'une ou l'autre ?
merci
bonjour,
Vu que les champ type "numeric" ou "decimal" sont identiques:
Est ce qu'il est préférable pour des raisons de conventions ou de portabilité de prendre l'une ou l'autre ?
merci
En effet les 2 types "NUMERIC" et "DECIMAL" sont identique du point de vue de la norme SQL92. Maintenant ce qui différencie les 2 types c'est la facon dont Firebird stocke les données suivant l'échelle et la précision des types numériques. Par contre il n'existe aucune convention ni probléme de compatibilté entre les 2 types.
Pour être plus précis, voici comment Firebird stock en interne les valeurs selon le type et le précision:
PRECISION - TYPE ---------------- DIALECT 3 -- DIALECT 1
--------------------------------------------------------------
1 a 4 ---- NUMERIC -------------- SMALLINT --- SMALLINT
// ------- DECIMAL -------------- INTEGER --- INTEGER
5 a 9 ---- NUMERIC and DECIMAL - INTEGER --- INTEGER
10 a 18 -- NUMERIC and DECIMAL - BIGINT ---- DOUBLE PRECISION
Partager