在 MySQL 的安裝目錄下有一個(gè) my.ini 配置文件,通過修改這個(gè)配置文件可以一勞永逸的解決亂碼問題。在這個(gè)配置文件中 [mysql] 與客戶端配置相關(guān),[mysqld] 與服務(wù)器配置相關(guān)。
專注于為中小企業(yè)提供成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)大同免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了數(shù)千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
確保phpmyadmin導(dǎo)出的數(shù)據(jù)中文顯示正常,進(jìn)入phpmyadmin界面,將語言選為中文simple-chinese(注意非simple-chinesegb2312),再導(dǎo)出sql中文就能正常顯示。
Mysql的默認(rèn)編碼方式是Latin1,不支持中文,因此,如果要讓mysql支持中文的話需要把數(shù)據(jù)庫默認(rèn)的編碼修改為gbk或者utf8。
檢查亂碼出現(xiàn)位置——MySQL數(shù)據(jù)庫。當(dāng)排除了前后臺(tái),那么只剩下數(shù)據(jù)庫了。那么問題就在數(shù)據(jù)庫上了。小編先在數(shù)據(jù)庫里直接數(shù)據(jù)了亂碼的漢字,發(fā)現(xiàn)可以存儲(chǔ)。排除了數(shù)據(jù)庫表的文字編碼問題。
mysql命令行中文顯示亂碼的解決辦法:當(dāng)我們直接使用mysql -u root -proot登陸命令行界面。當(dāng)表中存在中文的時(shí)候會(huì)出現(xiàn)亂碼。出現(xiàn)這個(gè)亂碼的原因是登陸時(shí)使用的是lastin碼,所以需要重新退出使用編碼明確登陸。
1、。確保my.ini中涉及到字符的參數(shù)都是utf8 2。如果直接用mysql的命令行(開始菜單下的Command Line Client)會(huì)有問題,它直接使用my.ini中的default-character-set=utf8連接,而我們的機(jī)器字符集基本都是GBK。
2、“使用命令行方式登陸到MySQL服務(wù)器, 建立一個(gè)數(shù)據(jù)庫,數(shù)據(jù)庫編碼設(shè)為UTF-8。此時(shí),如果直接在命令行窗口使用insert語句插入中文,就遇到類似 ERROR 1406 (22001): Data too long for column name at row 1 錯(cuò)誤。
3、但是,假如上面換成插入的是英文內(nèi)容的話,將不會(huì)出現(xiàn)上面的報(bào)錯(cuò),因?yàn)?,英文的GBK和UTF8編碼相同。
4、因?yàn)橹形腤indows系統(tǒng)默認(rèn)的字符集不是UTF-8的,所以不能在命令行輸入包含中文的SQL語句,只能找個(gè)類似phpAdmin的數(shù)據(jù)庫客戶端,設(shè)置字符集為UTF-8才能輸入包含中文的SQL語句。
試了一下你的建表語句,和插于語句,沒問題,估計(jì)是你設(shè)置問題。
你的 mysql 數(shù)據(jù)庫的 編碼格式是什么? GB2312 么? 嘗試修改成 GBK 或者 UTF8 看看。
php+mysql數(shù)據(jù)時(shí)我們必須保證提交到數(shù)據(jù)庫的編碼與mysql編碼是一致的這樣才可以保存中文不出現(xiàn)問號(hào)亂碼問題,下面我先整理兩個(gè)讓mysql與頁面保證編碼一致的方法。
Mysql的默認(rèn)編碼方式是Latin1,不支持中文,因此,如果要讓mysql支持中文的話需要把數(shù)據(jù)庫默認(rèn)的編碼修改為gbk或者utf8。
mysql insert into users values(88,中文);mysql出現(xiàn)錯(cuò)誤 Cant create table“表名” (errno: 121)數(shù)據(jù)文件還存在,所以再建同名的數(shù)據(jù)文件則會(huì)出現(xiàn)錯(cuò)誤。
mysql支持gbk編碼的方法:在mysql數(shù)據(jù)庫中,使用的是latin字符集,所以無法正常的支持中文字符,中文在數(shù)據(jù)庫中顯示為亂碼“?”號(hào)。
Apache 和 MySQL變綠后,這應(yīng)該都會(huì)了。
1、我們打開Eclipse,如下:我們打開J2EE項(xiàng)目,如下:我們注意到我的代碼的中文編碼方式為”gbk“,而我的mysql的默認(rèn)編碼為utf-8。由于兩者不一致,所以在將字符插入數(shù)據(jù)庫時(shí)就出現(xiàn)了問題。
2、這是因?yàn)樽址幋a不一致導(dǎo)致的,插入的數(shù)據(jù)是問號(hào),檢查MySQL數(shù)據(jù)庫和表的編碼是否一致,程序里可以用mysql_query(set names utf8);//設(shè)置字符編碼為utf8,如果數(shù)據(jù)庫編碼是gbk,就改為gbk。
3、mysql -uroot -p show varaibles like %charater%把服務(wù)端或客戶端 結(jié)果集等這些編碼都重新設(shè)置一下:set character_set+client=utf8 #向這樣 其他都要設(shè)置成utf8;或者第二個(gè)方案:直接修改配置文件my.ini。
4、mysql中文顯示亂碼或者問號(hào)是因?yàn)檫x用的編碼不對(duì)或者編碼不一致造成的,最簡(jiǎn)單的方法就是修改mysql的配置文件my點(diǎn)吸煙 f。
5、字符集的問題,你的數(shù)據(jù)庫字符集要么設(shè)置為GB2312,要么設(shè)置為UTF-8,同時(shí)你的PHP文件的源代碼要和這個(gè)一直,并且保存和查詢的PHP連接數(shù)據(jù)庫以后都要用一個(gè)set names的SQL語句。