Supprimer de deux tables en une seule requête
P粉401901266
2023-08-27 13:45:48
<p>J'ai deux tables dans MySQL</p>
<pre class="brush:php;toolbar:false;">#tableau des messages :
ID du message
titre du message
.
.
Tableau #messagesutilisateurs
identifiant du message utilisateur
ID du message
ID de l'utilisateur
.
.≪/pré>
<p>Maintenant, si je souhaite supprimer du tableau des messages, je le peux. Mais lorsque je supprime le message par messageid, l'enregistrement existe toujours sur le message utilisateur et je dois le supprimer immédiatement des deux tables. </p>
<p>J'ai utilisé la requête suivante : </p>
<pre class="brush:php;toolbar:false;">DELETE FROM messages LEFT JOIN usersmessages USING(messageid) WHERE messageid='1' ;</pre>
<p>Puis je teste</p>
<pre class="brush:php;toolbar:false;">DELETE FROM messages, messages utilisateurs
OÙ messages.messageid = utilisateursmessages.messageid
et messageid='1' ;</pre>
<p>Mais ces deux requêtes n’ont pas accompli cette tâche. </p>
Traduction : Supprimez de la table messages où messageid = 1, si la table uersmessages a messageid = messageid de la table messages puis supprimez la ligne user messages table.
Je ne peux pas les séparer par un point-virgule ?
ou
Utilisez simplement
INNER JOIN
comme indiqué ci-dessous