Ahoj, já používám sice v mysql tabulky MyISAM, ale při spouštění serveru kódování nastavovat nemusím. Nechal jsem tam to, co tam bylo. V manuálu psali, že tímle parametrem nastavíš jenom defaultní kódování. Pokud je tabulka ale v jiném kódování, tak to data nepřekonvertuje. Co mi pomohlo je, že jsem nastavil kódování až u konkrétní databáze a tabulek. Teď nevím, jestli si přesně vzpomenu na ten SQL příkaz, ale bylo to něco jako:
CREATE DATABASE pokus
DEFAULT CHARACTER SET latin2 COLLATE latin2_czech_cs;
Stejně tak se nastavují i tabulky (výňatek z manuálu):
CREATE TABLE tbl_name (column_list)
[DEFAULT CHARACTER SET charset_name [COLLATE collation_name]]
ALTER TABLE tbl_name
[DEFAULT CHARACTER SET charset_name] [COLLATE collation_name]
CREATE TABLE Table1
(
column1 VARCHAR(5) CHARACTER SET latin1 COLLATE latin1_german1_ci
);
Pak se ještě musí nastavit kódování pro komunikaci mezi serverem a klientem. Tam mi nechodilo nastavení žádné znakové sady korektně, tak jsem to nastavil v zoufalství na hodnotu binary (?) a to chodí dobře. Takže hned po otevření databáze v programu volám
SET NAMES binary;
Snad ti to pomůže. Jinak se mrkni do manuálu (
www.mysql.org) Je to otrava to číst, ale je to tam pěkně popsaný a budeš tomu aspoň pořádně rozumět...