>> sorry za trochu OT dotaz, ale jak se mysql presvedci, aby defaultne >> pouzivala znakovou sadu utf-8? > > Zalezi jakou uroven "defaultu" mas na mysli. A taky je otazka, jestli > se ptas na kodovani serveru nebo klienta. > > Kodovani je napsano (v poradi v jakem se hleda) u sloupce tabulky, u > tabulky, u databaze, v konfiguraci serveru, zakompilovano v serveru. U > serveru. > > U klienta v konfiguraci (ta se ale nepouzije vzdy, zalezi na aplikaci, > ktera knihovnu pouziva) a pak je zakompilovano.
toto by som radsej uviedol na pravu mieru. V kontexte s MySQL hovorime o troch kodovaniach. Kodovanie v akom komunikuje klient so serverom, atd. (vid doc) To co pise Dan je malicko inak (alebo som prispevok nespravne pochopil :). Data su ulozene v "nejakom" kodovani. Toto kodovanie sa definuje na urovni stlpca. Ak nie je definovane, pouzije sa "default" hodnota z tabulky. Ak ani tam, tak databazy. atd. Pri MySQL je castym problemom "default" kodovanie "serveru" ako takeho. Toto nastavenie sa dalej pouziva na roznych miestach. Implicitne je to latin1. Uvodzovky som pouzil preto, lebo to nastavenie pouziva aj klientska kniznica MySQL a pouzije ho ako kodovanie, v ktorom sa bavi so serverom. Jedinou cestou zmeny je "WITH_CHARSET=..." pri make install clean v portoch. Ak uz ale mas zkompilovany a nainstalovany MySQL, riesenia su dve: * po kazdom volani connect() v aplikacii vykonat "SET NAMES XXX" * pridat do /etc/my.cnf "init-connect='SET NAMES XXX'" (toto nie je najstastnejsie, vykona sa to vzdy po kazdom prihlaseni s vynimkou pripadu, ze je prihlasenym pouzivatelom root, dopad na vykon je ale minimalny) Kodovanie MySQL je vseobecne tazko pochopitelne, skus napisat viac co myslis "defualt kodovanim" pripadne napis viac o probleme, ktory sa snazis vyriesit. d. rwi -- FreeBSD mailing list ([email protected]) http://www.freebsd.cz/listserv/listinfo/users-l
