Skip to main content

Posts

Showing posts from March, 2012

MySQL and UTF-8

Notes Good support from 4.1 utf-8  is  utf8  in MySQL. A collation defines the sort order for the data, it may be case sensitive or not To find out your current setup: SHOW VARIABLES LIKE 'character_set_database'; SHOW VARIABLES LIKE 'character_set_client'; To see available character sets and collations on your database: SHOW CHARACTER SET; SHOW COLLATION LIKE 'utf8%'; Character set and collation can be set per server, database, table, connection; Server ( /etc/my.cnf ): [mysqld] ... default-character-set=utf8 default-collation=utf8_general_ci Database: (CREATE | ALTER) DATABASE ... DEFAULT CHARACTER SET utf8 Table: (CREATE | ALTER) TABLE ... DEFAULT CHARACTER SET utf8 Connection: SET NAMES 'utf8'; A  PHP  mysql connection ( not totally confirmed , but see tests below) defaults to a latin1 connection, so, your first query after connection should be: mysql_query("SET NAMES 'utf8'"); In php versio