Numérique et Sciences Informatiques1ère

Langage de définition des données
Exercices corrigés

Maîtrisez le langage de définition des données : CREATE, ALTER, DROP, contraintes, index grâce à ces 5 exercices détaillés.

Concepts & Exercices
DDL = CREATE + ALTER + DROP
Opérations principales

Commandes DDL

CREATE
Création d'objets
ALTER
Modification d'objets
DROP
Suppression d'objets
TRUNCATE
Vidage de tables
CREATE TABLE Etudiants ( id INT PRIMARY KEY, nom VARCHAR(50), prenom VARCHAR(50), date_naissance DATE );
Exercice 1
Créer une table avec clés primaires et étrangères
Exercice 2
Modifier la structure d'une table existante
Exercice 3
Supprimer une table ou une colonne
Exercice 4
Ajouter des contraintes à une table
Exercice 5
Créer une base de données complète
Corrigé : Exercices 1 à 3
1 Création table avec clés
Définition :

CREATE TABLE : Commande DDL qui permet de créer une nouvelle table avec sa structure (colonnes, types de données, contraintes).

Syntaxe de base :
CREATE TABLE nom_table (
  colonne1 type_données [contraintes],
  colonne2 type_données [contraintes],
  ...
  [contraintes_de_table]
);
CREATE TABLE Clients ( id_client INT AUTO_INCREMENT PRIMARY KEY, nom VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE, date_inscription DATE DEFAULT CURRENT_DATE );
Étape 1 : Définition du nom de la table

Choisir un nom descriptif respectant les conventions

Étape 2 : Déclaration des colonnes

Spécifier le nom, le type de données et les contraintes pour chaque colonne

Étape 3 : Définition de la clé primaire

Identifier la ou les colonnes qui formeront la clé primaire

Étape 4 : Ajout des contraintes

Appliquer les contraintes d'intégrité (NOT NULL, UNIQUE, etc.)

Étape 5 : Validation de la syntaxe

Vérifier que la commande respecte la syntaxe SQL

Réponse finale :

CREATE TABLE définit la structure de la table dans la base de données

Règles appliquées :

Types de données : Choisir le type approprié pour chaque colonne

Clé primaire : Doit être unique et non nulle

Nommage : Utiliser des noms explicites et cohérents

2 Modification structure table
Définition :

ALTER TABLE : Commande DDL qui permet de modifier la structure d'une table existante (ajouter/supprimer colonnes, modifier contraintes).

-- Ajouter une colonne ALTER TABLE Clients ADD telephone VARCHAR(20);
-- Modifier une colonne ALTER TABLE Clients MODIFY email VARCHAR(150);
-- Supprimer une colonne ALTER TABLE Clients DROP COLUMN telephone;
Étape 1 : Analyse des besoins

Identifier les modifications nécessaires à apporter à la table

Étape 2 : Vérification des dépendances

S'assurer que les modifications n'affecteront pas d'autres objets

Étape 3 : Sauvegarde des données

Créer une sauvegarde avant d'appliquer les modifications

Étape 4 : Application de la modification

Exécuter la commande ALTER TABLE appropriée

Étape 5 : Validation des changements

Vérifier que les modifications ont été correctement appliquées

ALTER TABLE = Modification + Validation + Impact
Réponse finale :

ALTER TABLE permet de modifier la structure d'une table existante

Règles appliquées :

Compatibilité : Les modifications doivent être compatibles avec les données existantes

Sécurité : Sauvegarder les données avant modification

Impact : Considérer les effets sur les applications utilisant la table

3 Suppression table/colonne
Définition :

DROP TABLE : Commande DDL qui supprime complètement une table et toutes ses données de la base de données.

-- Supprimer une table DROP TABLE AnciensClients;
-- Supprimer une colonne ALTER TABLE Clients DROP COLUMN ancien_champ;
Sauvegarder les données importantes
Vérifier les dépendances (relations, vues, procédures)
Confirmer la suppression
Exécuter la commande DROP
Vérifier la suppression
Étape 1 : Identification des objets à supprimer

Déterminer précisément quoi supprimer (table, colonne, index)

Étape 2 : Analyse des dépendances

Vérifier que la suppression n'affectera pas d'autres objets de la base

Étape 3 : Sauvegarde des données

Extraire les données potentiellement utiles avant suppression

Étape 4 : Exécution de la suppression

Exécuter la commande DROP appropriée

Étape 5 : Validation

Confirmer que l'objet a été correctement supprimé

DROP = Identification + Dépendances + Suppression
Réponse finale :

DROP supprime définitivement un objet de la base de données

Règles appliquées :

Irréversibilité : La suppression est définitive

Précaution : Vérifier deux fois avant d'exécuter

Dépendances : S'assurer qu'aucun objet ne dépend de celui à supprimer

Corrigé : Exercices 4 à 5
4 Ajout contraintes
Définition :

Contraintes DDL : Règles appliquées à la structure de la base de données pour garantir l'intégrité des données.

-- Ajouter une contrainte de clé étrangère ALTER TABLE Commandes ADD CONSTRAINT fk_client FOREIGN KEY (id_client) REFERENCES Clients(id_client);
-- Ajouter une contrainte CHECK ALTER TABLE Produits ADD CONSTRAINT chk_prix_positif CHECK (prix > 0);

Types de contraintes

PRIMARY KEY
Clé primaire
FOREIGN KEY
Clé étrangère
UNIQUE
Unicité
CHECK
Validation conditionnelle
Étape 1 : Identification des contraintes nécessaires

Déterminer quelles règles d'intégrité doivent être appliquées

Étape 2 : Analyse de la structure existante

Vérifier que la structure permet d'appliquer les contraintes

Étape 3 : Vérification des données existantes

S'assurer que les données actuelles respectent les nouvelles contraintes

Étape 4 : Application de la contrainte

Exécuter la commande ALTER TABLE avec la clause ADD CONSTRAINT

Étape 5 : Validation des contraintes

Tester que les contraintes fonctionnent correctement

Contrainte = Règle + Application + Validation
Réponse finale :

Les contraintes garantissent l'intégrité des données dans la base

Règles appliquées :

Compatibilité : Les données existantes doivent respecter la contrainte

Performance : Les contraintes peuvent affecter les performances

Documentation : Nommer les contraintes de manière explicite

5 Création base complète
Définition :

Création de base : Processus complet de définition d'une base de données avec toutes ses tables, relations et contraintes.

Étape 1 : Analyse des besoins

Identifier les entités et les relations nécessaires

Étape 2 : Modélisation conceptuelle

Créer le modèle conceptuel de données (MCD)

Étape 3 : Modélisation logique

Transformer le MCD en modèle logique relationnel

Étape 4 : Création des tables

Implémenter les tables avec CREATE TABLE

Étape 5 : Définition des relations

Créer les clés étrangères avec ALTER TABLE

Étape 6 : Application des contraintes

Ajouter les contraintes d'intégrité

Étape 7 : Validation

Vérifier que la structure répond aux besoins

Base complète = Analyse + Modélisation + Implémentation + Validation
Réponse finale :

Une base complète nécessite une planification et une implémentation rigoureuses

Règles appliquées :

Ordre d'implémentation : Créer les tables parentes avant les tables enfants

Normalisation : Appliquer les règles de normalisation

Performance : Considérer les index pour les requêtes fréquentes

Cours bien détaillé
DDL = Σ(Opérationsᵢ) | i ∈ {CREATE, ALTER, DROP}
Langage de définition
🏗️
CREATE : Crée de nouveaux objets dans la base de données.
🔧
ALTER : Modifie la structure des objets existants.
🗑️
DROP : Supprime définitivement des objets.
🔒
Contraintes : Règles qui garantissent l'intégrité des données.
💡
Conseil : Planifier la structure avant de créer les tables
🔍
Attention : Les commandes DROP sont irréversibles
Astuce : Utiliser des transactions pour les modifications importantes
📋
Méthode : Toujours sauvegarder avant les modifications
Vérification : Tester les contraintes avec des données réelles
Commandes DDL principales :
  • CREATE DATABASE : Crée une nouvelle base de données
  • CREATE TABLE : Crée une nouvelle table
  • ALTER TABLE : Modifie la structure d'une table
  • DROP TABLE : Supprime une table
  • CREATE INDEX : Crée un index pour améliorer les performances
  • TRUNCATE TABLE : Vide une table de toutes ses données
Règles importantes :
  • Les commandes DDL sont exécutées immédiatement (auto-commit)
  • Les modifications DDL ne peuvent pas être annulées avec ROLLBACK
  • Les contraintes d'intégrité sont appliquées automatiquement
  • Les noms d'objets doivent être uniques dans un même schéma
  • Les modifications peuvent nécessiter des droits administratifs
Langage de définition des données Concepts fondamentaux