aster Posted December 9, 2025 Posted December 9, 2025 (edited) Chodzi o posty, chciałbym bezpośrednio w bazie danych zamienić pewien tekst (sformulowanie) na inny. Chodzi tylko o tabelkę w bazie z postami. Jaką komendę SQL użyć aby: - znaleźć wszystkie przypadki danego słowa w postach? - zamienić dane słowo na inne? Edited December 9, 2025 by aster
Manager DawPi Posted December 9, 2025 Manager Posted December 9, 2025 Najpierw sprawdź ile tego masz: SELECT pid, post FROM forums_posts WHERE post LIKE '%stare_słowo%'; A potem zmiana: UPDATE forums_posts SET post = REPLACE(post, 'stare_słowo', 'nowe_słowo') WHERE post LIKE '%stare_słowo%'; Wiadomo, że musowo kopia bazy danych w razie W. 1 intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
aster Posted December 10, 2025 Author Posted December 10, 2025 Wielkie dzięki! Czy można wymusić by "query" uwzględniał/rozróżniał wielkość liter? Podczas sprawdzanie tego nie robi (przed chwilą sprawdziłem), ale podczas wymiany (nie sprawdziłem jeszcze) nie chciałbym błędnie podmienić tekst ze względu na małe czy duże znaki.
Manager DawPi Posted December 11, 2025 Manager Posted December 11, 2025 Hm a sprawdź takie zapytania: SELECT pid, post FROM forums_posts WHERE post LIKE '%stare_słowo%' COLLATE utf8mb4_bin; UPDATE forums_posts SET post = REPLACE(post COLLATE utf8mb4_bin, 'stare_słowo', 'nowe_słowo') WHERE post LIKE '%stare_słowo%' COLLATE utf8mb4_bin; intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
aster Posted December 11, 2025 Author Posted December 11, 2025 U mnie chyba wszystko jest starsze i wydaje mi się, że mam utf8mb3_unicode_ci. Czy w takim razie po prostu wpisać to: COLLATE utf8mb3_unicode_ci ?
Manager DawPi Posted December 11, 2025 Manager Posted December 11, 2025 Najpierw sprawdź to co ja dałem. intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
aster Posted December 11, 2025 Author Posted December 11, 2025 Wielkie dzięki, Twoje rozwiązanie rzeczywiście rozróżnia wielkość liter... a moja opcja pokazuje jakiś http error i nawet nie chce szukać. Na razie tylko szukałem. Jeśli natomiast będę robił zmianę danych w postach to czy użycie COLLATE utf8mb4_bin będzie bezpieczne jeśli w tabeli bazy podany jest utf8mb3_unicode_ci (jako Collation) ...oczywiście pod warunkiem, że są tam tylko zwykłe+polskie literki i żadnych 4-bajtowych znaków?
Manager Solution DawPi Posted December 12, 2025 Manager Solution Posted December 12, 2025 Powinno pójść, ALE sprawdź. Oraz oczywiście kopia bazy! intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
Manager DawPi Posted December 13, 2025 Manager Posted December 13, 2025 Problem ROZWIĄZANY. Jeśli są jakiekolwiek wątpliwości, pytania proszę o założenie nowego tematu. Wszelkie uzasadnione reklamacje/pretensje/sugestie/rady przyjmuje ekipa forum. intermedia - profesjonalne rozwiązania Invision Power Board --- Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.
Recommended Posts