Modification de champs dans la base Mysql

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Modification de champs dans la base Mysql

Re: Modification de champs dans la base Mysql

par t671 » 09 oct. 2012, 17:49

testé avec REPLACE :
mysql_query('UPDATE ville_test2 SET prenom = REPLACE (prenom,"%S?Bastien%","%Sébastien%") where prenom like "%S?Bastien%"');
Je n'ai eu aucun résultat, aucun message d'erreur !

Re: Modification de champs dans la base Mysql

par moogli » 09 oct. 2012, 16:31

et tu as fait quoi ?

sachant que tu ne peux pas remplacer comme ça à la volé une partie tel que tu l'a fait.

tu va devoir remplacer la partie foireuse par la bonne (l'équivalent de str_replace est le replaceen SQL)

il te faut modifier ta requête dans ce sens + le like


@+

Re: Modification de champs dans la base Mysql

par t671 » 09 oct. 2012, 16:23

Merci Moogli, mais ça ne change rien ! :(
Si j'ai 5 prénoms No?L et 2 prénoms Jean-No?L, je voudrais faire une seule commande pour les modifier tous en Noël !

Re: Modification de champs dans la base Mysql

par moogli » 09 oct. 2012, 15:26

Salut,

Dans le prédicat (where) utilise la clause like et non l'égalité.

@+

Modification de champs dans la base Mysql

par t671 » 09 oct. 2012, 14:50

Bonjour,

J'ai plusieurs données à modifier dans ma base de donnée.
Si j'écris :
mysql_query("UPDATE ville_test SET prenom = 'Noël' WHERE prenom = 'No?L' ");
cela fonctionne.
Mais si c'est un prénom composé, cela ne fonctionne plus. J'ai essayé
mysql_query("UPDATE ville_test SET prenom = '%Noël%' WHERE prenom = '%No?L%'");

mais ça ne fonctionne pas. Et je dois donc incrire une ligne pour chaque prénom composé (Marie No?L , Jean No?L , Pierre No?L , .......).

Comment puis-je faire ?
Merci.