查看系统的字符集和排序方式的设定可以通过下面的两条命令:
命令1:mysql> SHOW VARIABLES LIKE 'character%';
命令2:mysql> SHOW VARIABLES LIKE 'collation_%';
1.要保证character_set_client,character_set_connection这两个变量与character_set_database一致;同时保证character_set_results与SELECT返回的结果以及程序的编码一致,这一点相当重要!
2.在插入数据之前,最好加上一句:SET NAMES 'utf8',这一句话等同于:
set character_set_client = 'utf8'
set character_set_connection = 'utf8'
set character_set_results = 'utf8'
当然,如果整个环境所设置的字符集都为gbk,则此处也要这样设置:SET NAMES 'gbk'。
3.对重点的再一次总结:
要保证数据库中存的数据与数据库编码一致,即数据编码与character_set_database一致;
要保证通讯的字符集与数据库的字符集一致,即character_set_client, character_set_connection与character_set_database一致;
要保证SELECT的返回与程序的编码一致,即character_set_results与程序编码一致;
要保证程序编码与浏览器编码一致,即程序编码与<meta http-equiv="Content-Type" content="text/html; charset=?"/>一致
命令1:mysql> SHOW VARIABLES LIKE 'character%';
命令2:mysql> SHOW VARIABLES LIKE 'collation_%';
1.要保证character_set_client,character_set_connection这两个变量与character_set_database一致;同时保证character_set_results与SELECT返回的结果以及程序的编码一致,这一点相当重要!
2.在插入数据之前,最好加上一句:SET NAMES 'utf8',这一句话等同于:
set character_set_client = 'utf8'
set character_set_connection = 'utf8'
set character_set_results = 'utf8'
当然,如果整个环境所设置的字符集都为gbk,则此处也要这样设置:SET NAMES 'gbk'。
3.对重点的再一次总结:
要保证数据库中存的数据与数据库编码一致,即数据编码与character_set_database一致;
要保证通讯的字符集与数据库的字符集一致,即character_set_client, character_set_connection与character_set_database一致;
要保证SELECT的返回与程序的编码一致,即character_set_results与程序编码一致;
要保证程序编码与浏览器编码一致,即程序编码与<meta http-equiv="Content-Type" content="text/html; charset=?"/>一致