今天我在學(xué)習(xí)MySQL時(shí)遇到一個(gè)問題:用cmd窗口往表中添加漢字發(fā)現(xiàn)添加不上,報(bào)ERROR 1366 (HY000): Incorrect string value: '\xBC\xBE\xBE\xFC' for column 'name' at row 1這個(gè)錯(cuò)。我猜測(cè)是編碼的問題,于是查了我的mysql的編碼都是utf8的,按理說是不會(huì)出錯(cuò)的。后來我在看別人的博客時(shí)發(fā)現(xiàn)這個(gè)問題出在哪了。
原來是我使用的cmd窗口是使用gbk的編碼的,mysql和cmd的編碼是沖突的,所以導(dǎo)致往表中添加漢字失敗。
解決方案:
1 在mysql軟件上將編碼設(shè)置為utf8,直接使用mysql把漢字添加到表中
show variables like "%character%"http://顯示mysql中的編碼

set character_set_client=utf8;//把mysql中的client端的編碼格式修改為utf8
將這些屬性的編碼設(shè)置為utf8后,我們可以直接在mysql里將漢字輸入到表中
2 修改mysql中的屬性的編碼使其和cmd窗口的編碼相同,在cmd窗口上把漢字輸入到表中。
set names gbk;//將mysql中的編碼格式修改與cmd相匹配。
使用 show variables like "%character%"顯示mysql中的編碼格式。
浙公網(wǎng)安備 33010602011771號(hào)