Pourquoi cette requête ne fonctionne-t'elle pas ?

WRInaute occasionnel
Bonjour,

J'ai 400 enregistrements dans une table et je veux changer un mot par un autre, dans les tuples où il s'y trouve.
De sites en sites je tombe sur le même modèle de requête, qui chez moi ne fonctionne pas :
Code:
update cms_custom_database set field_20=replace(field_20, 'anciennechaine.php', 'nouvellechaine');

Je précise que j'exécute cette requête directement dans phpmyadmin.


Un avis ?


Merci d'avance.
 
WRInaute occasionnel
Drew a dit:
Salut,

Dans ce cas là tu peux afficher le debug du phpmyadmin et modifier une seule ligne manuellement, ainsi tu verras quel requête est effectuée et ensuite tu pourras la reproduire pour la table entière.

Ah pas bête, merci.



Tiens bah au risque d'abuser un peu, j'en profite pour vous poser une autre question. Je dois transférer le contenu d'une table à une autre.
Déjà là comme ça, j'ai pas la requête toute prête, mais à votre avis, il vaut mieux que je passe par une page php avec une boucle while, ou alors ça peut se faire aussi via phpmyadmin ?
 
WRInaute occasionnel
Hum non, je ne veux pas la dupliquer. Je veux transvaser son contenu dans une autre table déjà-existante. Il faut donc que j'harmonise les champs.
A mon avis, il va falloir un script php.
 
WRInaute discret
pas forcément :
insert into table2 (champ1, champ2) select champ3, champ4 from table1 where champ5=1
 
WRInaute occasionnel
Ouaip, merci pour vos réponses.

Louis63 a dit:
pas forcément :
insert into table2 (champ1, champ2) select champ3, champ4 from table1 where champ5=1

Hum, plus précisément là, avant de me lance. A quoi sert le champ5=1 dans ta requête, Louis63 ?
Perso, je veux expédier l'intégralité du contenu de Table1 vers Table2. Ai-je donc besoin d'une clause "where" ?
 
Discussions similaires
Haut