2010-10-17 2 views
2

Мне нужно изменить пути к серверу, которые были сохранены в моей базе данных (Wordpress), поэтому я ищу строку «/ home /». Есть ли какая-то команда, такая как str_replace($search, $replace, $subject) эквивалент в SQL?Как я могу найти и заменить в MySQL?

Редактировать: Что делать, если я не знаю, что такое имя поля? Ну, да, но есть более одного имени поля. Я просто надеялся на более «глобальное» решение, например, в Notepad ++, где я могу просто найти все и заменить все, но, похоже, я могу только обновить определенное поле/таблицу?

ответ

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

Link to documentation.

Edit:
Если вам необходимо обновить несколько полей, которые вы можете соеденить их по-запятыми между в том же UPDATE заявлении, например .:

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]'); 
Смежные вопросы