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