Bonjour à tous,
casiment tout est dans la question je vais juste le compléter:
Quel est le type à choisir pour un champ numérique dont les valeurs stockées commencent par un "0" ?
Avec "int" le zero disparait !
Merci à tous pour vos réponses.
Bonjour à tous,
casiment tout est dans la question je vais juste le compléter:
Quel est le type à choisir pour un champ numérique dont les valeurs stockées commencent par un "0" ?
Avec "int" le zero disparait !
Merci à tous pour vos réponses.
Si la valeur numérique, sur laquelle des calculs peuvent être effectués, doit être affichée sous la forme d'une chaine de caractères complétée à gauche par des zéros, il faut utiliser une colonne de type numérique (entier ou décimal) et c'est au niveau du formatage du résultat que la mise en forme doit être effectuée.
En revanche, s'il s'agit d'une valeur non numérique, de taille fixe ou variable, (une codification) composée uniquement de chiffres (les caractères compris entre 0 et 9), il faudra utiliser une colonne de type chaîne de caractère
Donc si je comprends bien pour des valeurs de type :
...-5, -4, -3, -2, -1, -0.5, 0(impossible), 0.5, 1, 2, 3, 4, 5... j'utilise les types "int"
Et pour des valeurs de type numéro de téléphone :
01........, 02........, 03........, 04........, 05........, 06........, etc... j'utilise les type "TEXT" ou "VARCHAR" ?
-0.5 et 0.5 ne sont pas de type INTEGER mais DECIMAL (ou FLOAT)
Pourquoi notes-tu : "0(impossible)" ?
La règle est TRÈS simple : il faut utiliser du numérique dès qu'il y a calcul possible. Il faut utiliser de l'alpha dans le cas contraire.
Faites vous des additions de n° de téléphone ? Multipliez vous les codes postaux ?? Extrayez vous la racine carré de votre N° de sécurité sociale ???
A +
Merci al1_24 et SQLpro,
J'ai compris maintenant. Aussi concernant "0(impossible)" c'est un mauvais exemple.
J'en profite pour vous demander si vous pourriez m'indiquer un document vraiment complet parlant des types afin que je puisse optimiser ma BDD.
J'avoue que ça fait un peu plus d'un an que je fais des sites avec php et BDD, et je ne me suis jamais penché sur l'optimisation de celle-ci.
Pour les champs alphanumériques je mets "text" et pour les champs numériques je mets "int" ou "decimal", sans avoir cherché à en savoir plus.
C'est comme pour l'encodage je me suis jamais vraiment penché dessus.
Pourriez-vous me conseiller sur des docs?
Ca dépendra pas mal de ta BDD. Quelle est-elle ? Cherche dans sa doc.
Tu peux aussi consulter cet article sur les données et les normes ainsi que cette partie d'un autre article de SQLPro sur la création des tables, abordée sur le plan purement normatif SQL.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager