該死的 Mysql 要怎樣改成 Big5 語系



贊助商連結


Sky_Fox
2003-10-23, 09:59 PM
哇哈哈,哇哈哈...(這是偶的苦笑聲)
素情素這樣的
為了要讓我的PostNuke 0.723全面使用中文繁體 (不是用UTF-8或ISO-8859-1,是真的BIG5碼)
所以捨棄了現成的 Red Hat 內的 Mysql RPM 版跑去 Mysql 的網站下載了要編譯的 tar.gz 版
下載的也不是拿下來改目錄名稱然後丟上 /usr/local 直接用的已編譯好的 Mysql是要完完全全自己編譯的 Mysql Source
看了很多文章,也看了 Mysql 內的 MENU 結果還是無法將其使用 Big5
我在編譯安裝時明明就跟它說了要編譯 Big5 的說 .但每次去看 /usr/local/mysql/share/mysql/ 就是沒有 Big5 的目錄 同時要安裝 測試資料庫時也會出現以下的字串....

"./mysqlcheck: File '/usr/local/mysql/share/mysql/charsets/big5.xml' not found (Errcode: 2)
./mysqlcheck: Character set 'big5' is not a compiled character set and is not specified in the '/usr/local/mysql/share/mysql/charsets/Index.xml' file"

我在安裝的時候是這樣下指令的
shell:>CXXFLAGS=-DDONT_USE_DEFAULT_FIELDS ./configure --prefix=/usr/local/mysql --with-charset=big5

有沒有人會解這道難題呀.....
救救我吧!

贊助商連結


teddychu
2003-10-23, 10:05 PM
說明永遠是英文的...

CPY
2003-10-23, 10:14 PM
我聽不懂你 MySQL 哪裡要用 Big5 碼 ?_?

Sky_Fox
2003-10-24, 09:34 PM
最初由 CPY 發表
我聽不懂你 MySQL 哪裡要用 Big5 碼 ?_?

因為我的Postunke把它全改成中文化啦!
我測試過,PHP中文沒問題了,許功蓋寫入也都OK不會衝碼,但只要碰到國字 一 . 作 這種字元就葛屁啦! 但如果把國字 一 . 作 這種字元單獨寫一行時,就又都沒問題!

所以囉!這表示 PHP 擷取字元後寫入 Mysql Server 裡的 DATA TABLE 時用的的確是使用 BIG5 碼寫入,但 Mysql 預設字元是 ISO 8859-1 的西歐字元存入,所以 PHP 再讀出時又變成了亂碼,尤其是有上述字元連著其它字元時,亂的更厲害咧,因此我只能想到把 Mysql Server 的預設字元改成 BIG5碼囉....

不知這樣回答您懂了沒咧..... :-)

CPY
2003-10-24, 10:54 PM
方法1:
於 my.cnf 尋找設定值
default-character-set=xxxxx
修改如下
default-character-set=big5

方法2:
於 php.ini 改變設定值
magic_quotes_pgc = off

方法3:
MySQL有個函數可以讓超字元之後的文字不會亂碼!!
可惜的是我的MySQL的書借朋友拉^^"

這幾個網站你可以去參考參考:
http://www.jerry.com.tw
http://tim.e104.org

genjen
2003-11-25, 10:58 AM
最初由 CPY 發表
方法1:
於 my.cnf 尋找設定值
default-character-set=xxxxx
修改如下
default-character-set=big5
http://www.jerry.com.tw
http://tim.e104.org
不好意思, 打擾一下, 我的 mysql 加上 default-character-set=big5 後會不能啟動ㄋㄟ...??:confused: