Dainius rašė:
> query("set name utf8") ?
Nepadės. Jei db duomenys yra cp1257, tai norint, kad tarp serverio ir
kliento vyktų konversija (cp1257 <-> utf-8), reikėtų:
SET character_set_client = utf-8;
SET character_set_results = utf-8;
SET character_set_connection = cp1257;
Ir tai dar *turbūt* reikės korektiškai/atitinkamai nustatyti duomenų
bazės (lentelės, stulpelio) koduotę; jos nenurodžius/nenustačius,
numatytoji reikšmė suieškoma tokia tvarka (iš apačios į viršų):
default (compiled):
"latin1" (jei nekeičiama)
server:
character_set_server
database:
CREATE DATABASE … [CHARACTER SET x]
table:
CREATE TABLE … [[DEFAULT] CHARACTER SET x]
column:
CREATE TABLE …
col_name … [CHARACTER SET x]
Tik tai neišsprendžia problemos, kai dalis (jau įrašytų) duomenų —
cp1257, o dalis — utf-8. Tektų perkoduoti lentelėje/stulpelyje esančius
duomenis:
http://dev.mysql.com/doc/refman/5.0/en/alter-table.html
http://dev.mysql.com/doc/refman/5.0/en/charset-conversion.html