PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 13/11/2008 18:43:54

Katagoto
Membre

Un problème de type

Bonjour à toutes et à tous,

Voilà, je me pose une question, sur plusieurs tables, environ 20, j'utilise fréquemment une colonne pour stocker un nombre compris généralement entre 0 et 4, voir 0 et 9, vaut-il mieu prendre un smallint ou un numeric(1,0) ?

Par avance merci de votre aide

Hors ligne

#2 13/11/2008 23:10:56

frost242
Administrateur

Re : Un problème de type

Pour représenter des valeurs entières, il vaut mieux utiliser un type adapté, donc smallint, integer ou bigint en fonction des besoins. En plus, smallint occupera moins d'espace disque.
En tout cas, dans votre cas, je prendrai plutôt un smallint.

Enfin pour citer la documentation, brillamment traduite par Guillaume Lelarge :

Le type numeric peut stocker des nombres contenant jusqu'à 1000 chiffres significatifs et effectuer des calculs exacts. Il est spécialement recommandé pour stocker les montants financiers et autres quantités pour lesquelles l'exactitude est indispensable. Néanmoins, l'arithmétique sur les valeurs numeric est très lente comparée aux types entiers ou aux types à virgule flottante décrits dans la section suivante.


Thomas Reiss

Hors ligne

#3 13/11/2008 23:57:42

Katagoto
Membre

Re : Un problème de type

ok, et pour un timestamp PHP (time() 32 chiffres), je privéligie quoi ?

Par avance merci de votre aide

Hors ligne

#4 17/11/2008 21:18:47

frost242
Administrateur

Re : Un problème de type

Pour le timestamp, il n'y a pas trop de choix: timestamp. Mais à mon boulot, les gens avaient tendance à utiliser du char/varchar pour stocker des dates, je n'ai jamais trop su pourquoi...

Attention toutefois à la précision, si elle est importante.


Thomas Reiss

Hors ligne

Pied de page des forums