DDL, Types de données, Clés et Contraintes sur MYSQL

WI
Wilan
6 min de lecture
DDL

Introduction au Data Definition Language (DDL)

DDL est l'acronyme de Data Definition Language, c'est-à-dire un ensemble de commandes pour décrire la conception complète d'une base de données en SQL (Structured Query Language). Les principales commandes DDL sont :

  • CREATE : Utilisé pour créer un nouvel objet.
  • ALTER : Utilisé pour modifier la structure d'un objet existant.
  • DROP : Utilisé pour supprimer un objet.

Utilisation des commandes CREATE, ALTER et DROP sur MySQL

a. CREATE

La commande CREATE est utilisée pour créer une nouvelle base de données, une nouvelle table ou une nouvelle vue.

  • Exemple : CREATE DATABASE toko_buku;
  • Explication : Cette commande permet de créer une nouvelle base de données nommée toko_buku.

b. ALTER

La commande ALTER est utilisée pour modifier la structure d'une table déjà créée. Cette opération peut être effectuée pour ajouter, supprimer, modifier des colonnes, modifier la table, ou encore attribuer de nouveaux attributs à une colonne.

  • Exemple : ALTER TABLE buku ADD judul_buku varchar(20);
  • Explication : Cette commande permet d'ajouter un nouveau champ (colonne) nommé judul_buku de type varchar avec une longueur maximale de 20 caractères dans la table buku.

c. DROP

La commande DROP permet de supprimer définitivement un objet de la base de données. Cet objet peut être la base de données elle-même, une table, une fonction, un index, une procédure, un déclencheur ou une vue.

  • Exemple : DROP DATABASE toko_buku;
  • Explication : Cette commande supprime la base de données nommée toko_buku.

Types de données sur MySQL

Le choix du type de données approprié est crucial pour l'efficacité du stockage de la base de données. Voici les catégories de types de données sur MySQL :

A. Types de données numériques

Utilisés pour stocker des données de type numérique.

  • TINYINT : Stocke des entiers (positifs/négatifs). Plage : -128 à 127. Taille : 1 octet (8 bits).
  • SMALLINT : Stocke des entiers. Plage : -32768 à 32767. Taille : 2 octets (16 bits).
  • MEDIUMINT : Stocke des entiers. Plage : -8388608 à 8388607. Taille : 3 octets (24 bits).
  • INT : Stocke des entiers. Plage : -2147483648 à 2147483647. Taille : 4 octets (32 bits).
  • BIGINT : Stocke des entiers à grande échelle. Plage : -9223372036854775808 à 9223372036854775807. Taille : 8 octets (64 bits).
  • FLOAT : Stocke des nombres décimaux en simple précision. Taille : 4 octets (32 bits).
  • DOUBLE / REAL : Stocke des nombres décimaux en double précision. Taille : 8 octets (64 bits).
  • DECIMAL / NUMERIC : Stocke des nombres décimaux avec une très haute précision. Taille : 8 octets (64 bits).

B. Types de données chaîne (texte)

Utilisés pour stocker des données sous forme de caractères ou de texte.

  • CHAR : Stocke une chaîne de caractères de taille fixe (ex : ID produit, NIK carte d'identité). Plage : 0 à 255 caractères.
  • VARCHAR : Stocke une chaîne de caractères de taille dynamique/variable. Plage : 0 à 65 535 caractères (dans les versions récentes).
  • TINYTEXT : Stocke un texte court. Plage : 0 à 255 caractères.
  • TEXT : Stocke un texte standard. Plage : 0 à 65 535 caractères.
  • MEDIUMTEXT : Stocke un texte de longueur moyenne. Plage : 0 à 16 777 215 caractères.
  • LONGTEXT : Stocke un texte très long. Plage : 0 à 4 294 967 295 caractères.

C. Types de données date et heure

Utilisés pour stocker des données temporelles.

  • DATE : Stocke une date (Format : YYYY-MM-DD). Plage : 1000-01-01 à 9999-12-31. Taille : 3 octets.
  • TIME : Stocke une heure (Format : HH:MM:SS). Plage : -838:59:59 à +838:59:59. Taille : 3 octets.
  • DATETIME : Combinaison de date et heure (Format : YYYY-MM-DD HH:MM:SS). Plage : 1000-01-01 00:00:00 à 9999-12-31 23:59:59. Taille : 8 octets.
  • YEAR : Stocke une année (Format : YYYY). Plage : 1900 à 2155. Taille : 1 octet.

D. Types de données BLOB (binaires)

BLOB est l'acronyme de Binary Large Object. Utilisé pour stocker des données binaires pures, sensible à la casse, et idéal pour les fichiers multimédias comme les images, documents ou sons.

  • BIT : Stocke des données binaires. Plage : 64 chiffres binaires.
  • TINYBLOB : Taille maximale de 255 octets.
  • BLOB : Taille maximale de 65 535 octets.
  • MEDIUMBLOB : Taille maximale de 16 777 215 octets.
  • LONGBLOB : Taille maximale de 4 294 967 295 octets.

Types de clés en SQL

Une clé en SQL est une combinaison de plusieurs attributs (colonnes) qui permet de distinguer de manière unique les lignes de données dans une table ou de relier une table à une autre.

  • Super clé : Ensemble d'attributs pouvant être utilisé pour identifier de manière unique chaque ligne de données d'une table.
  • Clé candidate : Super clé minimale ne contenant pas d'attribut redondant. La clé candidate est choisie parmi la combinaison la plus petite de champs pour identifier une valeur unique.
  • Clé primaire : Clé candidate choisie comme identification principale d'un enregistrement. Les données de la clé primaire ne peuvent pas être nulles (Not Null) et ne peuvent pas être dupliquées. Chaque table ne peut avoir qu'une seule clé primaire.
  • Clé alternative : Clé candidate non choisie comme clé primaire.
  • Clé étrangère : Clé utilisée pour relier une table à une autre, formant une relation parent-enfant. La clé primaire de la table principale (parent) est référencée par la clé étrangère de la table liée (enfant).
  • Clé composite : Clé composée de deux ou plusieurs attributs pour identifier de manière unique une entité. Généralement utilisée lorsqu'aucune colonne unique ne peut servir de clé primaire.

Types de contraintes sur MySQL

Les contraintes sont des règles de limitation appliquées à une colonne ou une table pour garantir l'intégrité et la validité des données.

  • NOT NULL : Garantit qu'une colonne ne peut pas être laissée vide lors de l'insertion d'un enregistrement. Cette colonne doit être remplie avec des données.
  • UNIQUE : Garantit que chaque valeur d'une colonne est différente des autres (pas de duplication des enregistrements).
  • PRIMARY KEY : Combinaison des contraintes NOT NULL et UNIQUE. Identifie de manière unique chaque ligne d'une table. Une seule PRIMARY KEY est autorisée par table.
  • FOREIGN KEY : Maintient l'intégrité référentielle des données entre les tables. Garantit que la valeur dans la colonne enfant doit avoir une référence valide dans la colonne parent (autre table).
  • CHECK : Effectue une validation avant que les données ne soient enregistrées dans la base de données. Les données sont évaluées avec une valeur booléenne ; si elles satisfont la condition (true), elles sont enregistrées, sinon (false), SQL les rejette et affiche un message d'erreur.
W

Écrit par

Wilan

Contributeur permanent de Bali Island Tekno qui partage activement des connaissances sur la technologie, la programmation et le monde du génie logiciel.

Retour à l'accueil Mis à jour le : 25 mai 2026