Było już o dodawaniu czegoś do każdej komórki w kolumnie poprzez SQL, więc teraz czas na zamianę tekstu w wypełnionych już komórkach.
Dla przykładu będę cały czas mówił tu o poście na stronie, a przykładach kodu użyję tych, które działają na popularnym WordPress. Oczywiście nie znaczy to, że możesz używać tej komendy tylko przy tym silniku. Możesz używać jej w każdym wypadku, gdy posiadasz bazę danych. Różnicą jest tylko tekst, który zamieniasz, oraz nazwa tabeli i kolumny w bazie danych.
Jeśli dołączasz jakiś kod do każdego postu i nie możesz pozwolić sobie na edycję plików motywu, aby pod każdym postem się pokazywał, to pewnie miałeś taką sytuację, że musiałeś zamienić jego część, lub go całkowicie usunąć.
Dla przykładu, jeśli masz kod w takiej postaci:
<a href="http://bing.com">Skorzystaj z wyszukiwarki Bing</a>
i chcesz jednak przerobić ten link na taki, który kieruje do Google, czyli na taką postać:
<a href="http://google.com">Skorzystaj z wyszukiwarki Google</a>
możesz zmienić to ręcznie, ale jeśli masz kilkadziesiąt i więcej postów, będzie to czasochłonne. Zamiast tego, lepiej użyć jednej komendy w SQL.
Jak zamienić teksty w każdym poście, czyli w każdej komórce kolumny bazy MySQL?
Musisz mieć dostęp do phpMyAdmin. Prawie każdy hosting takowy daje, więc nie powinieneś mieć problemu. Gdy już zalogujesz się do niego, przejdź do zakładki „SQL”.
Wtedy w pole, gdzie jest wpisana domyślna komenda, wpisz swoją. No tak, ale jaką? Tutaj masz wzór:
UPDATE tutaj_tabela SET tutaj_kolumna = REPLACE(tutaj_kolumna, 'tekst, który chcesz zamienić', 'tekst, który ma go zastąpić')
A tutaj powyższy przykład z zamianą wyszukiwarek.
UPDATE wp_posts SET post_content = REPLACE(post_content, '<a href="http://bing.com">Skorzystaj z wyszukiwarki Bing</a>', '<a href="http://google.com">Skorzystaj z wyszukiwarki Google</a>')
Jeśli chcesz kompletnie coś usunąć z postu, to zamień tekst na ”, czyli na nic, czyli go po prostu wyrzuć:
UPDATE wp_posts SET post_content = REPLACE(post_content, '<a href="http://bing.com">Skorzystaj z wyszukiwarki Bing</a>', '')
Nie myślałam że komendy SQL mogą zdziałać takie rzeczy.
Nawet nie wiedziałem że jest taka opcja. Pozdro 🙂
dzięki! nie wiedziałem, że operacje poprzez komendy SQL są takie proste 😮
pomyśleć, że kiedyś sama edytowałam każdy post…