MySQL 4.1 抓取 big5 编码资料的方法

Home Home
引用 | 编辑 Qoo
2007-02-26 09:12
楼主
推文 x0
MySQL 4.1 之后已经把 utf-8 作为预设编码,如果把 4.0.x 的资料放入 4.1 的资料库,抓出来的资料不是乱码就是一堆问号 ?? 。

尤其在租用虚拟主机的状况下,my.ini 完全不在自己手里,这时程式的修改是一定要的,只是要怎么做最不花时间。

这时只要在 MySQL 连线后(也就是下 SQL 指令之前),加一行指定编码的 SQL 即可,如红字部份所示:

复制程式
$link = mysql_connect("mysql.abc.com.tw", "test", "test");
$db = mysql_select_db("mysql_41", $link);
$charset = mysql_query("SET NAMES 'big5'", $link); 
$query = mysql_query("SELECT * FROM Test" , $link);

这个 SET NAMES 'big5' 就是代表:

SET character_set_client = big5;
SET character_set_results = big5;
SET character_set_connection = big5;

如果想知道这三个参数代表的意义,可以参考:

http://dev.mysql.com/doc/mysql/en/charset.html

本文转载自 http://www.neo.com.tw/archives/000552.html

献花 x0