2010-10-17 5 views
2

J'ai besoin de changer les chemins de serveur qui ont été stockés dans ma base de données (Wordpress), donc je cherche la chaîne "/ home /". Existe-t-il une sorte de commande telle que str_replace($search, $replace, $subject) équivalente en SQL?Comment puis-je trouver et remplacer MySQL?

Édition: Que faire si je ne connais pas le nom du champ? Eh bien, je le fais, mais il y a plus d'un nom de champ. J'espérais juste une solution plus "globale" comme dans Notepad ++ où je peux tout trouver et tout remplacer, mais il me semble que je ne peux que mettre à jour un certain champ/table?

Répondre

3
UPDATE mytable 
    SET server_path = REPLACE(server_path,'/home/','/new_home/'); 

Link to documentation.

Edit:
Si vous devez mettre à jour plusieurs champs vous pouvez les enchaîner le long avec des virgules entre dans cette même déclaration UPDATE, .: par exemple

UPDATE mytable 
    SET mycol1 = REPLACE(mycol1,'/home/','/new_home/'), 
     mycol2 = REPLACE(mycol2,'/home/','/new_home/'); 
2
update [table_name] set [field_name] = replace([field_name],'[string_to_find]','[string_to_replace]'); 
Questions connexes