J'ai deux table, avec un PK d'ID. Si dis je supprime l'entrée pour ID = 1, je veux qu'il supprime automatiquement le FK d'ID dans l'autre table. En d'autres termes je veux qu'il supprime également toutes les entrées avec ID = 1 dans l'autre table. Comment puis-je faire ceci? J'ai lié la relation PK-FK, mais lorsque je supprime l'entrée avec ID 1 dans la table PK, il ne supprime pas le FK.supprimer la clé primaire supprime également la clé étrangère
Répondre
Assurez-vous que vous êtes using the InnoDB engine pour les deux tables et ajoutez un foreign-key constraint en spécifiant on delete cascade
. Votre création de table SQL devrait ressembler à ceci:
create table child_table (
parent_id int references parent_table(id) on delete cascade
) engine 'innodb';
où child_table
et parent_table
sont les noms de vos enfants et tables parents.
est-il possible de modifier la table que j'ai déjà? – aherlambang
@EquinoX Bien sûr. Recherchez la commande 'alter table' ou utilisez une interface graphique comme HeidiSQL. – meagar
Vous devez définir vos contraintes de clé étrangère comme ON DELETE CASCADE.
Remarque: Vous devez utiliser le moteur de stockage InnoDB, le moteur de stockage MyISAM par défaut ne prend pas en charge la relation de clés étrangères.
CREATE TABLE `table2` (
`id` int(11) NOT NULL auto_increment,
`name` int(11) NOT NULL,
PRIMARY KEY (`id`),
KEY `ids` (`ids`)
CONSTRAINT `foreign` FOREIGN KEY (`ids`)
REFERENCES `table2` (`ids`) ON DELETE CASCADE ON UPDATE CASCADE
)
- 1. Clé étrangère vers la clé primaire composite
- 2. Clé primaire VS clé étrangère
- 3. clé primaire comme clé étrangère
- 4. Grails: clé étrangère comme clé primaire?
- 5. Clé primaire et étrangère
- 6. besoin d'aide dans la clé primaire et la clé étrangère
- 7. Obtient la clé primaire et la contrainte de clé étrangère
- 8. Mysql - utiliser la clé primaire comme la clé étrangère
- 9. mettre la valeur de la clé étrangère de clé primaire
- 10. ScalaQuery clé primaire multiple & clé étrangère
- 11. ASP.NET MVC - Clé étrangère comme clé primaire?
- 12. Ajouter à la clé primaire sans supprimer les références de clé étrangère
- 13. Mise en veille prolongée: clé étrangère est la clé primaire
- 14. Comment représenter "ALL" dans la relation clé primaire-clé étrangère
- 15. Instruction Mysql pour retourner la clé primaire sans clé étrangère?
- 16. code EF Première: clé primaire identique à la clé étrangère
- 17. La suppression de données de clé étrangère doit afficher une erreur pour la clé primaire
- 18. Une clé étrangère peut-elle agir comme une clé primaire?
- 19. Clé étrangère pointant vers la clé composée
- 20. Clé étrangère SQL supprimer la cascade
- 21. Clé composite primaire et étrangère jpa
- 22. Comment une clé étrangère pointe vers une clé primaire composée?
- 23. Clé primaire/clé étrangère de base avec contrainte, séquence, déclencheur
- 24. Requête MySQL Référence de clé étrangère Clé primaire
- 25. clé primaire + clé étrangère avec une erreur en double entrée
- 26. Ruby on Rails - Clé primaire et étrangère
- 27. MySQL 1 clé étrangère référençant 2 primaire
- 28. clé primaire et étrangère dans la même table ou non
- 29. comment connecter deux table en utilisant la clé primaire-étrangère?
- 30. Je dois reporter la clé primaire de la table primaire à un champ de clé étrangère dans la table dépendante
double possible de [Comment puis-je utiliser une suppression en cascade dans une base MySQL?] (Http://stackoverflow.com/questions/511361/how-do-i-use-on-delete-cascade-in- mysql) –