Tester la contrainte de clé étrangère
Dans cette étape, vous allez tester la contrainte de clé étrangère pour voir comment elle empêche l'insertion de données invalides dans la base de données.
Tout d'abord, insérez un utilisateur dans la table users :
INSERT INTO users (id, name) VALUES (1, 'Alice');
Cette commande insère un nouvel utilisateur avec l'id 1 et le name 'Alice' dans la table users.
Maintenant, essayez d'insérer une commande dans la table orders avec un user_id qui n'existe pas dans la table users :
INSERT INTO orders (user_id, amount) VALUES (999, 100.0);
Étant donné que les vérifications de clé étrangère sont activées, cette commande échouera avec un message d'erreur :
Error: FOREIGN KEY constraint failed
Cela démontre que la contrainte de clé étrangère fonctionne correctement, vous empêchant de créer une commande pour un utilisateur inexistant.
Ensuite, insérez une commande valide avec le user_id existant :
INSERT INTO orders (user_id, amount) VALUES (1, 100.0);
Cette commande réussira car le user_id 1 existe dans la table users.