Bonjour,
Je ne suis pas très fort en MySql et j'ai une base de données à maintenir.
Je suis en train de faire un changement sur mon site et au fil du temps, j'ai constaté qu'il y avait des améliorations à faire. Du style changer les <fonts> en autres tag qu'il me sera plus facile à changer.

J'ai adopté pour l'instant la solution en PHP

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
/* Lecture de la ligne (ligne par ligne) de la base de données */
oo= preg_replace('/<FONT COLOR="#000099">(.*?)<\/FONT>/si', '[COL1]\\1[/COL1]', $ligne);
Je voudrais réécrire cette procédure en requête MySql de façon à faire le changement sur toute la table d'un coup. La recherche est trouvée avec :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
$motif='\<FONT COLOR="#000099">(.*?)<\/FONT>';
$requete="SELECT * FROM $matable WHERE REGEXP '".$motif."'" ;
$result = mysql($mabase,$requete);
Mais je voudrais faire des remplacements avec UPDATE sur ces enregistrements de façon à remplacer <FONT COLOR="#000099"> avec [COL1] et </FONT> avec </FONT> d'un coup.

Quelle est la requête que je dois écrire?

Merci.