MySQL數(shù)據(jù)庫(kù)正常插入并顯示中文數(shù)據(jù)需滿足的條件
MySQL數(shù)據(jù)庫(kù)默認(rèn)編碼已經(jīng)是utf8了, default-character-set = utf8,可是向數(shù)據(jù)庫(kù)中表中插入中文時(shí),卻老是出現(xiàn) ....\xB5\xA5\xD1\xA1 for column...這樣的錯(cuò)誤,經(jīng)過(guò)查閱網(wǎng)上類型的錯(cuò)誤后,發(fā)現(xiàn)一個(gè)很奇妙的現(xiàn)象,接下來(lái)我們就來(lái)開(kāi)始介紹。
一、在安裝數(shù)據(jù)庫(kù)時(shí)就設(shè)定字符集編碼為utf8的環(huán)境下
1.在當(dāng)前字符集編碼為:
- Server characterset: utf8
- Db characterset: utf8
- Client characterset: utf8
- Conn. characterset: utf8
下創(chuàng)建數(shù)據(jù)庫(kù):
(1)插入中文數(shù)據(jù),操作不能成功。
(2)修改字符集編碼為:
- Server characterset: utf8
- Db characterset: utf8
- Client characterset: gbk
- Conn. characterset: gbk
插入中文數(shù)據(jù),顯示正常。
二、在安裝數(shù)據(jù)庫(kù)時(shí)就設(shè)定字符集編碼為gbk的環(huán)境下
1.當(dāng)前字符集編碼是:
- Server characterset: gbk
- Db characterset: gbk
- Client characterset: gbk
- Conn. characterset: gbk
下創(chuàng)建數(shù)據(jù),插入中文數(shù)據(jù),操作正常,顯示正常。
2.當(dāng)前字符集編碼為utf8:
- Server characterset: gbk
- Db characterset: utf8
- Client characterset: utf8
- Conn. characterset: utf8
3.當(dāng)前字符集編碼為utf8:
- Server characterset: gbk
- Db characterset: gbk
- Client characterset: utf8
- Conn. characterset: utf8
插入中文數(shù)據(jù),操作不能執(zhí)行。
結(jié)論:要想能向數(shù)據(jù)庫(kù)正常插入中文,必須滿足以下條件:
1.要把字符集設(shè)定為能支持中文的gbk或則utf8;
2.把數(shù)據(jù)庫(kù)的Client Characterset和Conn. Characterset的字符集都設(shè)定為gbk;
根據(jù)上面的提示 ,我更改了:
- SET character_set_client=gbk;
- SET character_set_connection=gbk;
之后再嘗試想數(shù)據(jù)庫(kù)插入中文,這時(shí)沒(méi)有出錯(cuò),能插入可是查詢出來(lái)是亂碼。
***再更改;
- SET character_set_results=gbk;
這樣之后,所有的問(wèn)題都解決了,能正常插入也能正常顯示了。
關(guān)于MySQL數(shù)據(jù)庫(kù)正常插入中文數(shù)據(jù)并能正常顯示的條件就介紹到這里,希望通過(guò)本次的介紹能夠帶給您一些收獲吧!
【編輯推薦】






