Ce qui fait un succès MySQL SUPPRIMER de retour? Comment vérifier si la SUPPRESSION a réussi?
À l'aide de PHP, je suis en train de supprimer un enregistrement, mais je veux vérifier si elle a réussi ou non. Est rien retourné en cas de réussite DELETE FROM foo where bar = 'stuff'
?
Sinon, connaissez-vous d'autres façons de vérifier si une SUPPRESSION est réussie? Ou suis-je mieux de s'assurer simplement que la ligne existe avant que je le supprimer? Je suis en essayant d'éviter une autre question si possible.
Vous devez vous connecter pour publier un commentaire.
En supposant que vous utilisez mysql_query:
Si vous utilisez PDO::exec, puis le manuel dit ceci:
Ne voulez pas répondre à la bécassine, mais comme cela a été choisie comme la réponse, je note que mysql_query sera de retour
TRUE
même si la requête n'a pas fait de supprimer quoi que ce soit. Vous devez utilisermysql_affected_rows
pour vérifier qu'.En outre, si vous vous souciez le nombre de lignes qui ont été affectés:
mysql_query
sera de retourFALSE
. Si il n'y a rien à supprimer,mysql_query
serait de retourTRUE
etmysql_affected_rows
serait0
. Cela dit, vous ne devriez pas être à l'aide demysql_query
tous plus.vous pouvez essayer ce pour le code php, placé après votre requête s'exécute:
Pour d'autres types de SQL états,
INSERT
,UPDATE
,DELETE
,DROP
, etc,mysql_query()
retourne VRAI de la réussite ou de FAUX sur erreur.