Partie 1
1

Chapitre 2 :
Effacer les données de la base

Exemple sur Delete : Exemple SQL n°2

Les questions doivent vous aider à comprendre le code présenté ci-dessous.
Une fois que vous tenez la solution, vous pouvez afficher la réponse en cliquant sur l’intitulé de la question.

1.Quelle table devrait être supprimée ?

R : La table Clients.

2.Que signifie le message d'erreur ?

R : Il y a une erreur à cause de la contrainte de clé étrangère qui s'appelle FK_location_clients. Cette contrainte relie la table LOCATION à la table CLIENTS par la clé étrangère CodeCli. Il est donc impossible de supprimer une ligne de la table CLIENTS qui contient un CodeCli qui apparait dans la table LOCATION. Cela voudrait dire qu'un client inconnu à loué un film

3.Quels sont les lignes de la table CLIENTS que l'on peut supprimer ?

R : Toutes les lignes qui contiennent des CodeCli qui ne sont pas dans la table LOCATION. Les clients 8, 9, 10, et 11 n'ont jamais loué de film, on peut donc les supprimer de la table.

4.Comment faire pour supprimer les autres lignes ?

R : Il faut commencer par supprimer les lignes de la table Locations dans lesquelles apparaissent des codecli que l'on souhaite supprimer. Puis ensuite supprimer les lignes de la table Clients
Exemple validé
DELETE 
FROM Clients;
Table Clients (codecli, prenomcli, nomcli, ruecli, cpcli, villecli)
Clé primaire : codecli

Table Films (codefilm, nomfilm)
Clé primaire : codefilm

Table Locations (codecli, codefilm, datedebut, duree)
Clé primaire : codecli, codefilm
Clé étrangère : codefilm de la table Films, codecli de la table Clients

Une erreur d'exécution a été relevée.
FOREIGN KEY constraint failed
2 / 3
Exemple sur Delete