[分享] 談 UTF-8 與 DB 的相容問題

Webmasters Discussion
站長們到此分享架站甘苦、管理心得等;歡迎大家多多提出意見喔!
(請勿發表任何跟站長經驗分享不相干的文章,違者砍文)

版主: 版主管理群

回覆文章
chiouss
竹貓忠實會員
竹貓忠實會員
文章: 1741
註冊時間: 2002-11-29 18:19

[分享] 談 UTF-8 與 DB 的相容問題

文章 chiouss »

phpBB 開始轉 UTF-8 大概是和 MySQL 發展到 4.1 版正式支援 UTF-8 有關吧?如果不是 MySQL 4.1 讓一堆人 db 把 charset 亂搞因此炸掉的話,大概很少人會去努力把所有 PHP + MySQL 的程式都搞成 UTF-8 來儲存。

事實上 UTF-8 和 ASCII 是相容的,所以說即時你還在用 MySQL 3.23 你一樣也可以用 UTF-8 的 phpBB 或是其他的程式,不會有任何的問題。對於 PgSQL 或是其他 DB 系統也應該是這樣,但是 MSSQL 可能就是個例外 (怎麼又是 MS 啊?)

這篇是我第一次看到 MSSQL 出槌的狀況,才發現 MSSQL 雖然核心有支援 Unicode,卻沒有辦法正常處理 UTF8 的 input。會爛掉可能是因為 MSSQL 把部分的 UTF8 當成了 2 bytes 的中文字去處理,然後對應不出正確的字,就爛了 Orz

除了這個問題之外,還沒有碰到其他不支援 UTF-8 的 DB,所以我認為把 PHP 程式改成用 UTF-8 來 I/O 是很正確的趨勢,不管是對開發者或是使用者來說,這會比單純去做一些 DBCS 或是多國語系修正之類的來得省事和方便。
--
PS. 資料變大的問題是難免的,但是官方的說法是最多大小變成 1.5 倍,我個人認為影響還不算太大。如果真的會因此讓效率變低的話,我認為升級硬體會比較有用 :D
chiouss
竹貓忠實會員
竹貓忠實會員
文章: 1741
註冊時間: 2002-11-29 18:19

文章 chiouss »

冏"... 寫出來的東西和本來想寫的東西差好多,大家看看就好,要吐槽也可以 :D
問題狂
竹貓忠實會員
竹貓忠實會員
文章: 1947
註冊時間: 2004-06-28 17:13

文章 問題狂 »

UTF-8跟MS SQL的相容性我是不清楚
不過跟MySQL就比較高了
而且也比較沒有衝碼的問題
不像Big5在送出資料時有時還要在後面加上"//"
不過如果採用UTF-8編碼的話
會佔用比較大的資料庫
ckmarkhsu
星球公民
星球公民
文章: 139
註冊時間: 2005-03-21 09:38

文章 ckmarkhsu »

PS. 資料變大的問題是難免的,但是官方的說法是最多大小變成 1.5 倍,我個人認為影響還不算太大。如果真的會因此讓效率變低的話,我認為升級硬體會比較有用
其實未必會變慢,如果使用 MySQL 4.1 以上的版本,且使用 mysqli 函數來操作

我記得之前看過的資料,有時速度甚至可以提升到 數十 倍以上(不知道那篇文章有沒有喇賽XD)

ps. 最近我發現,原來 php5 的效能比 php4 好不少,explode function 甚至高了五倍Orz...
台灣深藍vBulletin技術論壇

vBulletin 論壇系統,內建

「0 修改新增插件」「完整附件功能」「無限深度子論壇」「進階權限管理」「前台 AJAX 即時管理」

歡迎研究:)
chiouss
竹貓忠實會員
竹貓忠實會員
文章: 1741
註冊時間: 2002-11-29 18:19

文章 chiouss »

ckmarkhsu 寫:
PS. 資料變大的問題是難免的,但是官方的說法是最多大小變成 1.5 倍,我個人認為影響還不算太大。如果真的會因此讓效率變低的話,我認為升級硬體會比較有用
其實未必會變慢,如果使用 MySQL 4.1 以上的版本,且使用 mysqli 函數來操作
我記得之前看過的資料,有時速度甚至可以提升到 數十 倍以上(不知道那篇文章有沒有喇賽XD)

ps. 最近我發現,原來 php5 的效能比 php4 好不少,explode function 甚至高了五倍Orz...
大神那邊丟出來的 link...PHP5 benchmark, PHP4 benchmark,MySQL benchmark

mysqli 有沒有比 mysql 快我不清楚,但是 phpBB 不管選 mysql3.x 還是 mysql4/5 好像都是用 mysql...

問題回到我的那篇,不見得每個人都升級了以後才使用 utf8 啊?我學長現在還在用 mysql 3.23,資料庫裡面的內容一樣塞 utf8 進去。他是怎麼想到要這樣幹的我就不清楚了 :Q
jwxinst
竹貓忠實會員
竹貓忠實會員
文章: 945
註冊時間: 2006-03-31 10:07
來自: New York, USA     學業狀況: 當天才...       個人狀況: 臭蛋
聯繫:

文章 jwxinst »

php5 的效能比 php4 好不少
phpBB還是跟他相容性不太好....


選什麼編碼要看個人意願, 還有用途..,,
目前狀態圖檔
GoKo Music進度: 10%

問個問題不要緊可是沒有發文格式、問題不夠詳細情況,難道要用猜嗎?
新手必讀
[教學] 基本認識、學習、隨我架設phpBB的新手通 -更新至2.0.22
問問題的技巧
http://www.phpbb-tw.net/phpbb/viewtopic.php?t=44340
MOD安裝教學及轉碼
http://www.phpbb-tw.net/phpbb/viewtopic.php?t=22832
chiouss
竹貓忠實會員
竹貓忠實會員
文章: 1741
註冊時間: 2002-11-29 18:19

文章 chiouss »

jwxinst 寫:php5 的效能比 php4 好不少
phpBB還是跟他相容性不太好....
我這邊"純" phpBB 用 PHP5 跑得好好的,有問題的應該是那些 MODs 吧?

Anyway, 官方都不保證不出問題的東西,自己用就要自己想辦法維持 compatibility,這是理所當然的事情。
問題狂
竹貓忠實會員
竹貓忠實會員
文章: 1947
註冊時間: 2004-06-28 17:13

文章 問題狂 »

jwxinst 寫:php5 的效能比 php4 好不少
這邊有人做過測試:
http://www.twvbb.com/vbb/showthread.php?t=787
可信度大家自己評斷吧!
不過個人其實覺得和硬體比較有關說 :lol:
chiouss
竹貓忠實會員
竹貓忠實會員
文章: 1741
註冊時間: 2002-11-29 18:19

文章 chiouss »

問題狂 寫:這邊有人做過測試:
http://www.twvbb.com/vbb/showthread.php?t=787
可信度大家自己評斷吧!
不過個人其實覺得和硬體比較有關說 :lol:
blah~ 三個人的文章來源是同一個網頁 XD
jwxinst
竹貓忠實會員
竹貓忠實會員
文章: 945
註冊時間: 2006-03-31 10:07
來自: New York, USA     學業狀況: 當天才...       個人狀況: 臭蛋
聯繫:

文章 jwxinst »

@_@那句不偶講的-口-


@@也不一定是外掛造成了
之前有人發問關於PHP5造成的安裝問題 / 使用問題
之前也有大大說php5支援性在phpbb比較低

@@vvvvvv
目前狀態圖檔
GoKo Music進度: 10%

問個問題不要緊可是沒有發文格式、問題不夠詳細情況,難道要用猜嗎?
新手必讀
[教學] 基本認識、學習、隨我架設phpBB的新手通 -更新至2.0.22
問問題的技巧
http://www.phpbb-tw.net/phpbb/viewtopic.php?t=44340
MOD安裝教學及轉碼
http://www.phpbb-tw.net/phpbb/viewtopic.php?t=22832
回覆文章

回到「站長交流」