1、修改安裝文件根目錄下的我的文件,搜索字段默認(rèn)特征設(shè)置,設(shè)置其值為中國字符編碼或國際編碼之一,重啟MySQL服務(wù)器;
創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站建設(shè)、網(wǎng)站制作與策劃設(shè)計(jì),濰坊網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:濰坊等地區(qū)。濰坊做網(wǎng)站價(jià)格咨詢:13518219792
2、修改數(shù)據(jù)庫編碼,在安裝目錄的根目錄下找到出現(xiàn)亂碼的數(shù)據(jù)庫對(duì)應(yīng)的文件夾,進(jìn)入文件夾,找到此數(shù)據(jù)庫的編碼配置文件,進(jìn)行修改,重啟MySQL服務(wù)器;
3、備份原數(shù)據(jù)庫數(shù)據(jù),直接刪除此數(shù)據(jù)庫,重新創(chuàng)建數(shù)據(jù)庫并設(shè)置編碼,再重啟MySQL服務(wù)器。
4、若仍出現(xiàn)亂碼,重裝系統(tǒng)即可。
顯示亂碼有許多原因:
這里主要是MySQL數(shù)據(jù)庫中 因?yàn)?*【編碼不統(tǒng)一】**造成的
Latin1是ISO-8859-1的別名,有些環(huán)境下寫作Latin-1,最終要改為utf-8
在數(shù)據(jù)庫中輸入查詢命令:
修改成功后的查看界面:
1.用phpmyadmin創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表
創(chuàng)建數(shù)據(jù)庫的時(shí)候,請(qǐng)將“整理”設(shè)置為:“utf8_general_ci”
或執(zhí)行語句:
復(fù)制代碼
代碼如下:CREATE
DATABASE
`dbname`
DEFAULT
CHARACTER
SET
utf8
COLLATE
utf8_general_ci;
創(chuàng)建數(shù)據(jù)表的時(shí)候:如果是該字段是存放中文的話,則需要將“整理”設(shè)置為:“utf8_general_ci”,
如果該字段是存放英文或數(shù)字的話,默認(rèn)就可以了。
相應(yīng)的SQL語句,例如:
CREATE
TABLE
`test`
(
`id`
INT
NOT
NULL
,
`name`
VARCHAR(
10
)
CHARACTER
SET
utf8
COLLATE
utf8_general_ci
NOT
NULL
,
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
MYISAM
;
2.用PHP讀寫數(shù)據(jù)庫
在連接數(shù)據(jù)庫之后:
復(fù)制代碼
代碼如下:$connection
=
mysql_connect($host_name,
$host_user,
$host_pass);
加入兩行:
mysql_query("set
character
set
'utf8'");//讀庫
mysql_query("set
names
'utf8'");//寫庫
就可以正常的讀寫MYSQL數(shù)據(jù)庫了。
用的appserv-win32-2.5.10做的環(huán)境,裝這個(gè)包的時(shí)候用默認(rèn)的utf8編碼。
在寫數(shù)據(jù)庫連接文件時(shí),寫成:
$conn
=
mysql_connect("$host","$user","$password");
mysql_query("SET
NAMES
'UTF8'");
mysql_select_db("$database",$conn);
然后在做頁面時(shí),注意這句:
復(fù)制代碼
代碼如下:meta
http-equiv="Content-Type"
content="text/html;
charset=utf-8"
/
這樣不管輸入數(shù)據(jù)庫的中文,還是頁面顯示,就都正常了。
在DW
CS4版里,默認(rèn)生成的也是utf8頁面。
同樣的,如果一開始寫數(shù)據(jù)庫連接文件時(shí)寫成:
mysql_query("SET
NAMES
'GBK'");
那頁面也要相應(yīng)變成:
復(fù)制代碼
代碼如下:meta
http-equiv="Content-Type"
content="text/html;
charset=gb2312"
/
總結(jié),最后主要是頁面編碼要統(tǒng)一就可以很方便的解決亂碼問題,特別是在mysql_query()這個(gè)set
names的設(shè)置必須和頁面及數(shù)據(jù)庫編碼統(tǒng)計(jì)一就可以了。
希望這兩篇關(guān)于UTF-8中文編碼亂碼的文章,能夠更好地幫助大家解決這類問題,希望大家喜歡。
方法/步驟
【第一步】在mysql dos命令窗口中輸入下面這段命令
SHOW VARIABLES LIKE 'character_set_%'; //注 用于顯示【mysql 的編碼設(shè)置】
2
顯示了之后 顯示你的mysql編碼設(shè)置和我的不同之處改掉就OK了
【你直接復(fù)制下面的命令 粘貼到dos命令窗口中就OK了】
【注 我這個(gè)改法 只有新添加到mysql的中文輸出不會(huì)出現(xiàn)亂碼 以前mysql中的中文還是亂碼】
SET character_set_client = gbk ; SET character_set_connection = gbk ; SET character_set_database = utf8 ; SET character_set_results = gbk; SET character_set_server = utf8 ; SET character_set_system= utf8 ;
3
dos命令窗口的粘貼方法 先把命令復(fù)制好 切換到 dos窗口 鼠標(biāo)點(diǎn)擊窗口 點(diǎn)擊鼠標(biāo)右鍵 有個(gè)粘貼 選擇粘貼即可 或者鼠標(biāo)點(diǎn)擊 dos命令窗口的 上邊框 右鍵出現(xiàn)了選項(xiàng) 在選擇編輯 最后選擇 里面的粘貼即可!
你可以直接把mysql安裝包下面的data目錄下所要到出的數(shù)據(jù)復(fù)制份,然后把mysql服務(wù)關(guān)了,把data數(shù)據(jù)放在新數(shù)據(jù)庫中的data目錄下,開啟服務(wù)就OK!(這種方式mysql版本的一致,如果不一致可以吧data目錄下的ibdata1文件一并拷貝過去)
sql語句導(dǎo)入mysql數(shù)據(jù)庫亂碼解決步驟如下:
1、首先要保證txt文件是用UTF8格式保存的,這里可以打開查看一下內(nèi)容確認(rèn)格式。
2、接著使用Navicat Premium連接上數(shù)據(jù)庫查看數(shù)據(jù)表是UTF8格式的。
3、接著 查看數(shù)據(jù)庫的格式,確保是UTF8。
4、繼續(xù)查看 數(shù)據(jù)庫中表的列也是UTF8格式。
5、查詢表數(shù)據(jù),先是空表沒有一條數(shù)據(jù)。
6、把準(zhǔn)備好的txt文件,導(dǎo)入到數(shù)據(jù)庫,查看數(shù)據(jù)是否有亂碼。
7、重新查詢數(shù)據(jù)庫查看剛剛導(dǎo)入進(jìn)去的數(shù)據(jù),沒有亂碼。
當(dāng)前題目:mysql亂碼怎么復(fù)制 mysql中文亂碼怎樣用代碼解決
分享地址:http://www.rwnh.cn/article24/hhshje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、定制網(wǎng)站、電子商務(wù)、網(wǎng)站內(nèi)鏈、網(wǎng)站設(shè)計(jì)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)