Guide Complet des Types de Données SQL

Guide Complet des Types de Données SQL

Le choix du type de données est une étape cruciale lors de la conception d’une base de données. Il influence non seulement l’espace de stockage, mais aussi les performances des requêtes et l’intégrité des informations.

1. Types Numériques

Ces types sont utilisés pour stocker des nombres entiers ou décimaux.

TypeDescriptionUsage courant
INT / INTEGERNombre entier standard (signé ou non).Identifiants (ID), quantités.
BIGINTEntier de très grande taille.Statistiques massives, IDs globaux.
SMALLINTEntier de petite taille.Âge, petits compteurs.
DECIMAL(p,s) / NUMERICNombre à virgule fixe exact.Prix, données financières (ex: DECIMAL(10,2)).
FLOAT / REALNombre à virgule flottante (approximation).Mesures scientifiques, coordonnées GPS.

2. Types de Chaînes de Caractères (Texte)

Utilisés pour stocker des lettres, des symboles et des chiffres traités comme du texte.

TypeDescriptionNote
CHAR(n)Chaîne de longueur fixe.Codes postaux, abréviations de pays (ex: ‘FR’).
VARCHAR(n)Chaîne de longueur variable.Noms, emails, adresses (le plus utilisé).
TEXTBloc de texte volumineux.Descriptions de produits, articles de blog.

3. Types de Date et Heure

SQL propose des types spécifiques pour manipuler les données temporelles.

TypeFormatDescription
DATEYYYY-MM-DDStocke uniquement la date (ex: date de naissance).
TIMEHH:MM:SSStocke uniquement l’heure.
DATETIMEYYYY-MM-DD HH:MM:SSStocke la date et l’heure combinées.
TIMESTAMPYYYY-MM-DD HH:MM:SSSimilaire à Datetime, souvent lié au fuseau horaire (UTC).
YEARYYYYStocke une année sur 4 chiffres.

4. Types Binaires et Autres

TypeDescriptionUsage courant
BOOLEAN / BOOLVrai (TRUE) ou Faux (FALSE).Statuts (ex: est_actif).
BLOBBinary Large Object.Images, fichiers PDF, fichiers audio stockés en binaire.
JSONFormat de données structuré.Données semi-structurées ou configurations flexibles.
ENUMListe de valeurs prédéfinies.Tailles (S, M, L, XL) ou civilité (M., Mme).

Conseils pour le choix des types

  1. Précision vs Stockage : N’utilisez pas BIGINT si un INT suffit. Chaque octet compte sur des millions de lignes.
  2. Données financières : Utilisez toujours DECIMAL pour l’argent afin d’éviter les erreurs d’arrondi des nombres flottants (FLOAT).
  3. Dates : Utilisez toujours les types natifs (DATE, DATETIME) plutôt que de stocker des dates sous forme de texte (VARCHAR), car cela permet d’utiliser les fonctions de calcul temporel (ex: DATEDIFF).
  4. Identifiants : Pour les clés primaires, le type INT avec auto-incrémentation est le standard, mais le UUID gagne en popularité pour les systèmes distribués.


Laisser un commentaire