Mysql
 sql >> Base de données >  >> RDS >> Mysql

Je veux supprimer une ligne des deux tables

  1. Pour supprimer des entrées des deux tables m et f résultats non joints :

    DELETE m,f FROM master m
    INNER JOIN field f ON m.id = f.label_id
    WHERE f.id='13';
    
  2. Pour supprimer des entrées de la table m sur les résultats joints :

    DELETE m FROM master m
    INNER JOIN field f ON m.id = f.label_id
    WHERE f.id='13';
    
  3. Pour supprimer des entrées de la table f sur les résultats joints :

    DELETE f FROM master m
    INNER JOIN field f ON m.id = f.label_id
    WHERE f.id='13';
    

Remarque : Une meilleure méthode pourrait être de mettre une contrainte de clé étrangère ayant le comportement ON DELETE CASCADE . Mais pour cela, vous avez besoin d'InnoDb comme moteur de stockage.