Konwersja bazy MySQL z ISO-8859-2 na UTF-8
Dobry wieczór,
utworzyłem bazę w MySQL i do wszystkich tabel z poziomu PHP zapisywałem łańcuchy tekstowe w kodowaniu ISO-8859-2, bo takie kodowanie miałem ustawione w HTML. Teraz chciałbym zacząć otworzyć serwis na inne języki i dlatego zależy mi na przejściu na konwersji danych zapisany w bazie na UTF-8. Pytanie tylko jak tego dokonać skoro tabel jest wiele, a między nimi jest wiele constraintów np. kluczy obcych.
Czy macie Państwo pomysł, albo doświadczenia na temat dokonywania takiej konwersji bazy mysql'owej?
1 odpowiedź
Wyeksportuj bazę do pliku SQL, a natępnie otwórz plik w Notepad++. Ustaw prawidłowy zestaw znaków, czyli 8859-2 tak abyś widział poprawne polskie litery. Teraz za pomocą kolejnej funkcji Notepad++ przekoduj plik na UTF-8. Zamień jeszcze w pliku wszelkie wystąpienia ciągu ISO-8859-2 na UTF-8 i zapisz plik.
Teraz wystarczy, że zaimportujesz ten plik SQL do nawej pustej bazy MySql i gotowe - będziesz miał dane w UTF-8. Pamiętaj, że musisz zmienić charset w html'ach również na UTF-8.