元月 28, 2007

[MySQL] 有關 charset=big5

看到一篇不錯的文章提到有關 的資訊

引用自

PS : 文章中的反斜線改用 全型 \ 取代


我的mysql在編時也沒有加上charset=big5
使用也很正常...
要不要加上charset=big5看個人

1.我的經驗是如果你有加上charset=big5那麼
當你的中文字進入mysql時就不會把"許蓋功"等字的"\"吃掉
2.沒加charset=big5 會吃掉輸入的" \",故造成亂碼

結論:
看你的程式設計方式而定
注意:php程式預設表單在送出(submit)時,遇到"許蓋功"會自動加上"\"
1.如果你用apache+php+mysql的話沒有設charset=big5,如果表單送出後中間沒有經其它處理,那麼進資料庫時,"\"會再被mysql吃掉,一加一減之間剛好正常。但若是直接下sql指令,如"update a set a.data='許蓋功'"
此時進資料庫因為沒有經過表單送出的動作,故造成亂碼,所以就必須改為"update a set a.data='\許\蓋\功'" 多設一個"\"給mysql吃

2.如果有設charset=big5,道理同上。從表單來的資料就必須減掉一個"\",再進資料庫。
直接下sql指令的話就不用了。



發佈者: 陳怡杰 老師 at 00:48│  點閱次數 (399)│ 修改文章管理迴響迴響 (0)部落格學習筆記
回應文章
(必要)
authimage