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

Insertion MySQL sur une clé en double ; effacer?

C'est une solution de contournement, mais ça marche :

Créez une nouvelle colonne et appelez-la do_delete , ou quoi que ce soit, ce qui en fait un minuscule int. Ensuite, faites On Duplicate Key Update do_delete = 1;

Selon votre version/connexion MySQL, vous pouvez exécuter plusieurs requêtes dans la même instruction. Cependant, si ce n'est pas le cas, exécutez simplement une requête distincte immédiatement après. Dans tous les cas, la requête suivante serait simplement :Delete From [table] Where do_delete = 1; . De cette façon, s'il s'agit d'une nouvelle entrée, rien ne sera supprimé. S'il ne s'agissait pas d'une nouvelle entrée, il la marquera alors pour suppression, puis vous pourrez la supprimer.