In cazul bazelor de date, trebuie specificat suportul pentru UTF-8. In primul rand, este nevoie sa setezi baza de date ca avand continut UTF-8. MySQL, incepand de la versiunea 4.1, oferta suport puternic pentru Unicode, si in consecinta si pentru UTF-8.
De obicei, MySQL lucreaza in mod implicit cu setul de caractere (denumit COLLATION in MySQL) latin1_swedish_ci pe care va trebui sa-l inlocuiesti cu utf8_general_ci.
Acest lucru il poti face fie printr-o interfata MySQL (phpMyAdmin, de exemplu, care este un script PHP ce face interfatarea cu serverul de MySQL) fie prin interogari:
Pentru modificarea bazei de date:
Cod: Selectaţi tot
ALTER DATABASE `database_name`
CHARACTER SET utf8
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci
DEFAULT COLLATE utf8_general_ci;
Pentru modificarea unei tabele:
Cod: Selectaţi tot
ALTER TABLE `table_name`
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci;
Pentru modificarea din
phpMyAdmin, dupa selectia bazei de date din selectul din stanga, click pe
Operations din meniul de sus. Ultima optiune este
Collation, care trebuie setat pe utf8_general_ci. Click pe
Structure, si se vor afisa toate tabelele. Campul
Collation ne spune ce set de caractere este definit. Daca nu este setat pe utf8_general_ci, trebuie sa o facem manual. Selectam o tabela, Click pe
Operations, si setam
Collation-ul corespunzator. Din pacate nu se poate aceasta modificare pe mai multe tabele deodata.
Dupa ce am setat baza de date si toate tabelele, trebuie sa setam si toate campurile de text care pot contine caractere UTF-8, si anume campurile de tip VARCHAR, CHAR, TEXT, TINYTEXT, MEDIUMTEXT, LONGTEXT, BLOB, TINYBLOB, MENIUMBLOB, LONGBLOB.