Baza wiedzy - MySQL – masowa zmiana jednego tekstu na drugi poprzez REPLACE

MySQL – masowa zmiana jednego tekstu na drugi poprzez REPLACE

Czasem zdarza się, że potrzebujemy zmienić masowo jakiś tekst w bazie danych, np. domenę po tym, jak zmieniamy jej nazwę. Oprócz plików konfiguracyjnych często mam w bazie setki powiązań z danym tekstem, czy to w postach na forum, czy to w konfiguracji. Podane zapytania możemy wykonywać np. poprzez phpmyadmina.
UPDATE
    nazwatabeli
SET
    nazwakolumny = REPLACE(nazwakolumny, 'czego szukamy', 'na co chcemy zmienić')
WHERE
    nazwakolumny LIKE '%czego szukamy%';
Podane zapytanie zamieni w tabeli nazwatabeli wszystkie odniesienia z „czego szukamy” na „na co chcemy zmienić”. W części WHERE podajemy, żeby szukało tekstu wraz z %%, co oznacza, że będzie szukało w całej zawartości kolumny. Podanie tekstu bez % spowoduje, że tekst musiałby być dokładnie tekstem np. „co zmienić” zamiast „wiemy co zmienić, żeby znalazło”.