Un type de données définit le type de valeur qu'un champ peut contenir : entier, décimal, chaîne de caractères, date, booléen, binaire. Le type détermine les opérations autorisées et l'espace mémoire occupé par la valeur. On peut additionner deux entiers. On ne peut pas additionner un entier et une date sans conversion. On peut trier les chaînes de caractères par ordre alphabétique. On ne peut pas les trier numériquement, sauf si elles contiennent des chiffres. Le type constitue un contrat entre les données et le système qui les stocke.
Choisir le mauvais type de données engendre des problèmes. Stocker un numéro de téléphone sous forme d'entier supprime les zéros non significatifs. Stocker un prix sous forme de nombre à virgule flottante introduit des erreurs d'arrondi qui s'accumulent dans les calculs financiers. Stocker une date sous forme de chaîne de caractères ralentit les requêtes par plage et les rend sujettes aux erreurs. Stocker un booléen sous forme de chaîne de caractères gaspille de l'espace et favorise les fautes de frappe comme « ture ». Chaque type a son utilité : les entiers pour les comptages, les décimaux pour les montants, les chaînes de caractères pour le texte, les dates pour les valeurs temporelles, les booléens pour les valeurs vrai ou faux, et le binaire pour les fichiers et les tables de hachage. Certaines bases de données ajoutent des types spécialisés : JSON pour les données semi-structurées, les tableaux pour les listes et les types géospatiaux pour les coordonnées. Le système de typage garantit la cohérence des données. Il détecte les erreurs lors de l'insertion plutôt que lors de l'exécution des requêtes. Cette détection précoce justifie les contraintes qu'elle impose.
Types de données courants
- Entier — nombres entiers, dénombrements, identifiants
- Décimal — nombres fractionnaires précis, argent
- Chaîne de caractères — texte de longueur variable
- Date et heure — valeurs temporelles
- Booléen — vrai ou faux
- Binaire — octets bruts, fichiers, hachages
Les types de données sont des garde-fous. Ils empêchent les valeurs incorrectes d'entrer et facilitent la manipulation des valeurs correctes.
Comments
No comments yet. Be the first to share a thought.
Leave a comment