Exercice — dans l'esprit des sujets du bac
Dans le contexte des bases de données, répondre par V (vrai) ou F (faux) à chaque proposition, puis justifier brièvement.
- Les commandes de définition de données (LDD) en SQL sont exactement
CREATE,ALTER,COLUMN. - La clause ON DELETE CASCADE maintient l’intégrité référentielle : lorsqu’on supprime une ligne de la table « mère », les lignes correspondantes de la table « fille » sont supprimées.
- Pour ajouter la clé étrangère
NumClientà la tableCommandeen référençantClient(NumCl), la commande correcte est :ALTER TABLE Commande ADD CONSTRAINT CT1 FOREIGN KEY (NumClient) REFERENCES Client (NumCl); - Les commandes LDD se limitent à
CREATEetSELECT;DROPappartient au LMD.
Voir la correction commentéeAprès avoir posé votre démarche
1. F. Les commandes de définition de données en SQL sont CREATE, ALTER et DROP (pas COLUMN seul). COLUMN n’est pas une commande LDD autonome.
2. V. ON DELETE CASCADE maintient l’intégrité référentielle de suppression en cascade : supprimer une ligne de la table mère entraîne la suppression des lignes filles liées par la clé étrangère.
3. V. La syntaxe ALTER TABLE Commande ADD CONSTRAINT … FOREIGN KEY (NumClient) REFERENCES Client (NumCl) ajoute correctement la clé étrangère sur Commande vers la clé primaire NumCl de Client.
4. F. SELECT est une commande LMD (manipulation). Le LDD regroupe CREATE, ALTER, DROP. On ne « commence » pas la conception par le LMD avant le LDD.