Kodowanie znaków w bazie danych

Forum przeznaczone dla MySql - bazy danych.
bielu000
Stały Bywalec
Stały Bywalec
Posty: 84
Dołączył(a): piątek, 8 maja 2009, 14:54

Kodowanie znaków w bazie danych

Post przez bielu000 »

Cześć, po stworzeniu bazy danych i późniejszym pobraniu rekordów z tabeli pojawił się problem w postaci pytajników zamiast polskich znaków. Nigdy wcześniej takiego problemu nie miałem. Próbowałem już chyba wszystkich możliwych kodowań. utf8_polish_ci, utf8_general_ci, latin2_general_ci i jeszcze kilku innych. Żadnego efektu. Wszystkie pliki zakodowane są jako UTF-8 z racji, że sam NetBeans tak robi, ale dodatkowo potraktowałem je programem Grzegrzółka. Ręczne wpisanie znaków, "na żywca" w dokumencie nie stwarza problemu, natomiast pobieranie danych z bazy już tak. Co jeszcze mogę zrobić, aby coś temu zaradzić?
Morfidon
Administrator
Administrator
Posty: 1332
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48
Contact:

Re: Kodowanie znaków w bazie danych

Post przez Morfidon »

Hej,

Nie powinieneś korzystać z takich programów, jeśli z nich korzystasz to znaczy, że coś jest źle.

Skorzystaj z:

utf8_polish_ci,

Na samym starcie po połączeniu z bazą wykonaj następującą instrukcję:
query("SET NAMES utf8");

Ustaw kodowanie znaków pliku na UTF-8.

Ustaw meta-tag dot. kodowania na UTF-8.

Jeśli wykonałeś te czynności na jeszcze niewprowadzonych danych do bazy to wszystko musi działać poprawnie.

Pamiętaj, że dane wpisane do bazy danych muszą tam zostać wpisywane, dopiero po ustawieniu kodowania. Jak zmienisz kodowanie podczas gdy masz już jakieś rekordy to też może powstać problem.

Tu masz wyjaśniony problem dot. znaków polskich:
https://www.youtube.com/watch?v=7oN4ZoQT_DA

Pozdrawiam :)
bielu000
Stały Bywalec
Stały Bywalec
Posty: 84
Dołączył(a): piątek, 8 maja 2009, 14:54

Re: Kodowanie znaków w bazie danych

Post przez bielu000 »

Pomogło "SET NAMES UTF-8".
Dziwne - nigdy wcześniej nie natrafiłem na takie komplikacje ;)
Post Reply