A więc mam plik bazy danych, nazwijmy go baza.sql zapisany w notatniku czyli z windowsowym kodowaniem ANSI lub UTF-8. Żeby było trudniej to ma on np. 17mb więc import przez phpMyAdmina odpada...
Tworzę bazę na serwerze z kodowaniem UTF-8 i metodą porównywania napisów utf8_polish_ci
Tworzę tabele danych przez phpMyAdmina poleceniem:
CREATE TABLE IF NOT EXISTS `tabela_w_bazie` ( `pole1` mediumint(6) UNSIGNED NOT NULL AUTO_INCREMENT, `pole2` char(6) collate utf8_polish_ci NOT NULL, ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
I teraz wykorzystuję polecenie z konsoli aby zaimportować plik bazy do tabeli czyli:
mysql -h adres_serwera -u uzytkownik -p nazwa_bazy < baza.sql
Baza ładnie się importuje ale niestety okazuje się że zamiast polskich znaków mamy krzaki...
Teoretycznie można zrobić odpowiednie połączenie z bazą, np.
ale to jest dobre na krótką metę... Co jeśli zrobimy na stronie wyszukiwarkę i użytkownik wpisze słowo np. "łyżeczka". Jak porównać te słowo z tymi krzakami w bazie? Prawdopodobnie jest gdzieś błąd na etapie importu bazy czy też zapisywania plików z odpowiednim kodowaniem... Ale niestety próbowałem już na różne sposoby a krzaki jak są tak są:/ Jeśli ktoś wie jak sobie z tym poradzić na działającym przykładzie to proszę o jakąś podpowiedź. Pozdrawiam, Łukasz.