MySQL ERROR 1366-problem z kodowaniem polskich znaków

Odpowiedz Nowy wątek
2016-08-13 22:18
0

Witam.
Na wstępie chcę napisać że szukałem rozwiązania w google, SO, i pytałem się na wykopie. Nie znalazłem rozwiązania mojego problemu.
Mam aplikacje w Flask która po prostu zapisuje tekst do bazy danych wszystko działa dopóki nie pojawią się polskie znaki. Wtedy dostaje błąd:
ERROR 1366 (HY000): Incorrect string value: '\xC5\x84' for column 'body' at row 1
Kodowanie bazy danych zrobiłem tak:

ALTER DATABASE `strona` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 

Kombinowałem też z tym:

ALTER DATABASE strona DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; 

A sama baza wygląda tak:
+-------+-----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+-----------------------+------+-----+---------+----------------+
| id | mediumint(8) unsigned | NO | PRI | NULL | auto_increment |
| link | varchar(255) | YES | | NULL | |
| body | longtext | YES | | NULL | |
+-------+-----------------------+------+-----+---------+----------------+
Męcze się z tym już kilka godzin i przez to nie mogę ruszyć dalej... Z góry dziękuje za pomoc.

Pozostało 580 znaków

2016-08-13 23:31
0

a zmień w konfigu mysql:


[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

Pozostało 580 znaków

2016-08-13 23:44
0

Niestety nie pomogło.

Pozostało 580 znaków

2016-08-14 23:12
0

To, że zmieniłeś kodowanie bazy nic nie daje dla już utworzonych tabel. Zmień kodowanie bazy na utf8_polish_ci (czy co tam potrzebujesz), wywal tabelę i załóż ja na nowo. Potem spróbuj.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0