Mysql : supprimer des enregistrements

schizo -  
jeanch_tlse Messages postés 13 Statut Membre -
Bonjour,
Mon forum est plein de spams, je cherche donc à les supprimer en masse directement dans la base de données. L'idée pour moi étant de supprimer tout les messages qui font un lien dans le corps du texte. J'ai essayé l'expression suivante mais sans succès :

DELETE  *  FROM  'mabase'.'matable'  WHERE (  'monchamp'  LIKE  '%href%' )


Rien n'est supprimé. ai-je fait une faute de quelque part

2 réponses

  1. jeanch_tlse Messages postés 13 Statut Membre 3
     
    Bonjour,
    Je ne connais pas MySql, mais s'il n'y a pas de message d'erreur, peut etre manque il un "commit" pour valider.
    0
    1. schizo
       
      Qu'est ce que c'est un commit ?
      0
  2. jeanch_tlse Messages postés 13 Statut Membre 3
     
    Commit; est une instruction pour valider les modifications(update) ou suppressions (delete) en cours.
    Rollback; est une instruction pour annuler les modifications/suppressions en cours.

    Et a priori il ne faut pas mettre "*" entre delete et from :
    DELETE FROM 'mabase'.'matable' WHERE ( 'monchamp' LIKE '%href%' )

    Voir la syntaxe sur l'aide en ligne MySql : https://dev.mysql.com/doc/ : reference manual / data manipulation syntax

    12.2.2. DELETE Syntax

    Single-table syntax:

    DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name
    [WHERE where_condition]
    [ORDER BY ...]
    [LIMIT row_count]
    0