Introduction au Langage de Définition de Données (DDL)

DDL signifie Data Definition Language (Langage de Définition de Données), c’est-à-dire un ensemble de commandes permettant de décrire la conception globale d’une base de données en SQL (Structured Query Language). Les principales commandes du DDL sont les suivantes :

  • CREATE : Utilisée pour créer de nouveaux objets.
  • ALTER : Utilisée pour modifier la structure d’objets existants.
  • DROP : Utilisée pour supprimer des objets.

Utilisation des commandes CREATE, ALTER et DROP dans MySQL

a. CREATE

La commande CREATE est utilisée pour créer de nouvelles bases de données, de nouvelles tables ou de nouvelles vues.

  • Exemple : CREATE DATABASE toko_buku ;
  • Explication : Cette commande crée 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 permet d’ajouter, de supprimer, de modifier des colonnes, de transformer la table ou d’attribuer de nouvelles propriétés aux colonnes.

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

c. DROP

La commande DROP supprime 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 dans MySQL

Choisir le bon type de données est très important pour l’efficacité du stockage en base de données. Voici les catégories de types de données dans MySQL :

A. Types de données numériques

Utilisés pour stocker des données de type nombre.

  • TINYINT : Stocke des entiers (positifs/négatifs). Plage : -128 à 127. Taille : 1 octet (8 bits).
  • SMALLINT : Stocke des entiers. Plage : -32 768 à 32 767. Taille : 2 octets (16 bits).
  • MEDIUMINT : Stocke des entiers. Plage : -8 388 608 à 8 388 607. Taille : 3 octets (24 bits).
  • INT : Stocke des entiers. Plage : -2 147 483 648 à 2 147 483 647. Taille : 4 octets (32 bits).
  • BIGINT : Stocke des entiers de grande taille. Plage : -9 223 372 036 854 775 808 à 9 223 372 036 854 775 807. Taille : 8 octets (64 bits).
  • FLOAT : Stocke des nombres à virgule flottante en simple précision. Taille : 4 octets (32 bits).
  • DOUBLE / REAL : Stocke des nombres à virgule flottante en double précision. Taille : 8 octets (64 bits).
  • DECIMAL / NUMERIC : Stocke des nombres à virgule fixe avec une très haute précision. Taille : 8 octets (64 bits).

B. Types de données chaînes de caractères (Texte)

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

  • CHAR : Stocke une chaîne de longueur fixe (ex. : identifiant d’article, numéro de sécurité sociale). Plage : 0 à 255 caractères.
  • VARCHAR : Stocke une chaîne de longueur 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 taille moyenne. Plage : 0 à 16 777 215 caractères.
  • LONGTEXT : Stocke un très long texte. Plage : 0 à 4 294 967 295 caractères.

C. Types de données Date et Heure

Utilisés pour stocker des données de date et d’heure.

  • DATE : Stocke une date (Format : AAAA-MM-JJ). 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 la date et de l’heure (Format : AAAA-MM-JJ 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 : AAAA). Plage : 1900 à 2155. Taille : 1 octet.

D. Types de données BLOB (Binaires)

BLOB signifie Binary Large Object. Il est utilisé pour stocker des données binaires pures, il est sensible à la casse et il est idéal pour les fichiers multimédias tels que les images, les documents ou les 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 d’un ou plusieurs attributs (colonnes) qui sert à distinguer de manière unique les lignes de données dans une table ou à lier (mettre en relation) une table avec une autre.

  • Super Clé : Un ensemble d’attributs pouvant être utilisé pour identifier de manière unique chaque ligne de données d’une table.
  • Clé Candidate : Une super clé minimale ne comportant aucun attribut redondant. Une clé candidate est choisie parmi la plus petite combinaison de champs capable d’identifier des valeurs uniques.
  • Clé Primaire : La clé candidate retenue comme identifiant principal d’un enregistrement. Les données d’une clé primaire ne doivent pas être vides (Not Null) et ne doivent pas se dupliquer. Chaque table ne peut avoir qu’une seule Clé Primaire.
  • Clé Alternative : Une clé candidate qui n’est pas choisie comme Clé Primaire.
  • Clé Étrangère : Clé utilisée pour relier une table à une autre, formant ainsi une relation parent-enfant. La Clé Primaire de la table parent est référencée par la Clé Étrangère de la table liée (enfant).
  • Clé Composite : Clé composée de deux attributs ou plus permettant d’identifier de manière unique une entité. Généralement utilisée lorsqu’aucune colonne unique ne remplit les conditions pour être Clé Primaire.

Types de Contraintes dans MySQL

Les contraintes sont des règles appliquées aux colonnes ou aux tables pour préserver 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. La colonne doit obligatoirement être renseignée.
  • UNIQUE : Garantit que chaque valeur d’une colonne est différente des autres (pas d’enregistrements en double).
  • PRIMARY KEY : Combinaison des contraintes NOT NULL et UNIQUE. Identifie chaque ligne d’une table de manière unique. Une seule PRIMARY KEY est autorisée par table.
  • FOREIGN KEY : Maintient l’intégrité référentielle entre les tables. Garantit que la valeur de la colonne enfant possède une référence valide dans la colonne parent (d’une autre table).
  • CHECK : Effectue une validation ou une vérification avant que les données ne soient enregistrées dans la base. Les données sont évaluées par une valeur booléenne ; si la condition est remplie, elle est évaluée à true et les données sont enregistrées, mais si elle est false, SQL les rejette et affiche un message d’erreur.

Shares:
Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *