2012-02-07 2 views
-1

J'ai un simple CMS qui exécute PHP/MySQL et je cherche le moyen le plus efficace de mettre à jour les champs LONGTEXT sur plusieurs tables lorsque je change le titre/url d'une page.PHP - Le moyen le plus efficace de mettre à jour le texte MySQL

Par exemple: je change la page "/ contact" à "/ contactez-nous" et je veux tous les champs LONGTEXT sur plusieurs tables contenant

...<a href="/contact">... 

mise à jour à

...<a href="/contact-us>"... 

Je sais que je pourrais juste faire un SELECT, faire correspondre les enregistrements et les remplacer, mais je pense qu'il doit y avoir une méthode plus légère sur MySQL ...

Répondre

1

Je trouve ceci:

UPDATE table SET some_column = REPLACE(some_column, 'href="/contact', 'href="/contact-us') 

Ce qui semble faire exactement ce que je cherche.

0

exécutez les opérations suivantes dans der pour trouver les entrées qui contiennent la chaîne que vous voulez changer

mysqldump -u username db-name | grep "<a href=\"/contact\">" 

puis de passer un par un et mettre à jour les entrées pertinentes.

Questions connexes