5.18日(rì)音(yīn)訊,Mys₹≥γql的(de)亂碼詳解
日(rì)期:2013-05-18發布:首創網絡浏覽:802次
5.18日(rì)音(yīn)訊,Mysq®<∞l的(de)亂碼詳解。MySQL會(huì)出現(x'←≥iàn)中文(wén)亂碼的(de)原因不(bù)★<<∏外(wài)乎下(xià)列幾點: 1.server本身(sh₽←↕÷ēn)設定問(wèn)題,例如(rú)還(hái)停留在latin1→© 2.table的(de)語系設定問(wèn)題(包含ch£→♦≠aracter與collation) 3.客戶端程式(例如(rúγ↔)php)···
本文(wén)關鍵字:5.18日(rì),音(yīn)訊,M →∏ysql,的(de),亂碼,詳解,5.18日(rì),™≥↑音(yīn)訊,Mys
5.18日(rì)音(yīn)訊,Mysql的£₩₩$(de)亂碼詳解。MySQL會(huì)出現(xiàn)中文(wén)亂碼的(φσ₽de)原因不(bù)外(wài)乎下(xià)列幾點:
1.server本身(shēn)設定問(wèn)題,例如(rú)還α♥∞ε(hái)停留在latin1
2.table的(de)語系設定問(wèn)題(包含ch¥≤aracter與collation)
3.客戶端程式(例如(rú)php)的(de♥©)連線語系設定問(wèn)題
強烈建議(yì)使用(yòng)utf8!!!©×!
utf8可(kě)以兼容世界上(shàng)所有(∏©yǒu)字符!!!!
一(yī)、避免創建數(shù)據庫及表出現(xφiàn)中文(wén)亂碼和(hé)查看(k₽☆✘₽àn)編碼方法
1、創建數(shù)據庫的(de)時(shí)候"₽♥:CREATEDATABASE`test`
CHARACTERSET'utf8'
COLLATE'utf8_genera¥✔l_ci';
2、建表的(de)時(shí)候CREATETABL$&>E`database_user`(
`ID`varchar(40)NOTNULLd♣↔φ efault'',
`UserID`varchar(40)NOTNULLd♣€efault'',
)ENGINE=InnoDBDEFA↓≠ULTCHARSET=utf8;
這(zhè)3個(gè)設置好(hǎo)了(le),基本就(£≠♠jiù)不(bù)會(huì)出問(wèn)題了(le),即建庫和(hé)建表Ω♣≠時(shí)都(dōu)使用(yòng)相(xiàng)同的(→λ♠de)編碼格式。
但(dàn)是(shì)如(rú)果你(nǐ)已經建了(leβ★↕)庫和(hé)表可(kě)以通(tōng)過以下(xià)方式 × ¥進行(xíng)查詢。
1.查看(kàn)默認的(de)編碼格式:
mysql>showvariableslik✔&φ→e"%char%";
+--------------------------+--£γ≠σ-------------+
|Variable_name|Value|
+--------------------------+↑¶---------------+
|character_set_client|gb→♠∑k|
|character_set_conn™<γection|gbk|
|character_set_database|utf8|
|character_set_filesysteπβ$εm|binary|
|character_set_results|✘ ♥±gbk|
|character_set_server|utf8|
|character_set_sys∑•tem|utf8|
+----------------->♠±β---------+-------------+
注:以前2個(gè)來(lái)确δ→©定,可(kě)以使用(yòng)setnamesutf8,setnam ☆✔esgbk設置默認的(de)編碼格式;
執行(xíng)SETNAMESutf8的(de)效果等同于同時(s"↔≠₩hí)設定如(rú)下(xià):
SETcharacter_set_cli÷≠ent='utf8';
SETcharacter_set_connection='utf×$8';
SETcharacter_set_results='utf8';ε✔>α
2.查看(kàn)test數(shù)據庫的§←(de)編碼格式:
mysql>showcreatedatabasetest;÷¶λ
+------------+---------- €₽₽--------------------------------÷♦∞---------------------±↓≠™----------------------------©♦-----+
|Database|CreateDataba≈¥π'se|
+------------+-------------------$↕--------------------------- ♥✔--------------------------λ∏------------------------+
|test|CREATEDATABASE`test`/*!40®¶• 100DEFAULTCHARACTERSETg<&bk*/|
+------------+----------☆∞☆'------------------------------------ε↓♦ ---------------------------♠₩≈-----------------------+>
3.查看(kàn)yjdb數(shù)據庫的(de∑>)編碼格式:
mysql>showcreatetablφ£≈eyjdb;
|yjdb|CREATETABLE`yjdb`♦→€±(
`sn`int(5)NOTNULLAUTO_✔σINCREMENT,
`type`varchar(10)NOTNULL,
`brc`varchar(6)NOTNULL,
`teller`int(6)NOTNULL,
`telname`varchar(10)NOTNULL,φ↓
`date`int(10)NOTNU♣₩♦←LL,
`count`int(6)NOTNULL,
`back`int(10)NOTNULL,
PRIMARYKEY(`sn`),
UNIQUEKEY`sn`(`sn`),
UNIQUEKEY`sn_2`(`s¶♦☆n`)
)ENGINE=MyISAMAUTO_INCREMENT=''1826DEFAULTCHARSET=gbkROWλ±∏€_FORMAT=DYNAMIC|
二、避免導入數(shù)據有(yǒu)中文(wén)亂←₩♦碼的(de)問(wèn)題
1:将數(shù)據編碼格式保存為(wèi)utf£∏-8
設置默認編碼為(wèi)utf8:★₽₹>
setnamesutf8;
設置數(shù)據庫db_name默認為(wèi)β∑¥♥utf8:
ALTERDATABASE`db_name`DEFAULTCHAε®•RACTERSETutf8COLLATEutf8_general_ci;
設置表tb_name默認編碼為(wèi)utf8:≈♥
ALTERTABLE`tb_name`DEFAULTCHARACTERφ©SETutf8COLLATEutf8_general_ci;
導入:
LOADDATALOCALINFILE'C:utf8.txt'INTOπ←TABLEyjdb;
2:将數(shù)據編碼格式保存為(wè±γ↑•i)ansi(即GBK或GB2312)
設置默認編碼為(wèi)gbk:
setnamesgbk;
設置數(shù)據庫db_name默認編碼為≠ ™(wèi)gbk:
ALTERDATABASE`db_name`DEFAULTCHARACT→←ERSETgbkCOLLATEgbk_chinese_ci;
設置表tb_name默認編碼為(wèi)gbk:
ALTERTABLE`tb_name`DEFAULTCHARACTER© αSETgbkCOLLATEgbk_chinese_ci;
導入:
LOADDATALOCALINFILE'C:gbk.txt'IN∞₹TOTABLEyjdb;
注:1.UTF8不(bù)要(yào)導入gbk,gbk不(★↔±bù)要(yào)導入UTF8;
2.dos下(xià)不(bù)支持UTF£&→↓8的(de)顯示;
三、解決網頁中亂碼的(de)問(wèn)題
将網站(zhàn)編碼設為(wèi)utf-8,這(zh♣£è)樣可(kě)以兼容世界上(shàng)所有∞↑ £(yǒu)字符。
如(rú)果網站(zhàn)已經運作(zuò)了(le≠≥¥♣)好(hǎo)久,已有(yǒu)很(hěn)多(duō)舊(jiù)Ω∑數(shù)據,不(bù)能(néng)再更改簡體(tǐ)中文(wδ₹én)的(de)設定,那(nà)麽建議(☆✘yì)将頁面的(de)編碼設為(wèi)GBK,GBK與GΩ®♣σB2312的(de)區(qū)别就(jiù)在于:GBK能(né₹'<ng)比GB2312顯示更多(duō)的(de€✘₽)字符,要(yào)顯示簡體(tǐ)碼的(de)繁體(tǐ)字,就(<>jiù)隻能(néng)用(yòng)GBK。
1.編輯/etc/my.cnf,在[mysql]✘€段加入default_character_set=utf8;
2.在編寫ConnectionURL時(shí),加上(s←≤≤$hàng)?useUnicode=true&charact↕'₹∑erEncoding=utf-8參;
3.在網頁代碼中加上(shàng)一(yī)個✔λ≥(gè)"setnamesutf8"或者"setnamesg♣✔bk"的(de)指令,告訴MySQL連線內(nèi)容都(dōu)要(yàΩ'✔o)使用(yòng)utf8或者gbk;
- 歡迎大(dà)家(jiā)閱讀(dú)浏覽∞ ↑,部分(fēn)內(nèi)容來(lái)源于≠λ網絡,如(rú)有(yǒu)侵權,請(qǐng)聯系我們删除!✘"×
- 上(shàng)一(yī)條:5.17日(rì)音(yīn)訊,學會(huì)自(z→≈γì)己動手作(zuò)網線
- 下(xià)一(yī)條:5.18日(rì)音(yīn)訊,my.ini知(zhī)識及詳解
服務項目
熱(rè)門(mén)信息
- 邯鄲網絡公司:模闆建站(zhàn)的(de)好(hǎo)處有(yǒu>♠↓×)哪些(xiē)?
- 3642024-04-25

- 4.9日(rì)訊,企業(yè)網站(zhàn)建設Ω★"如(rú)何發揮網絡營銷功能(néng)?
- 4092024-04-09

- 邯鄲網絡公司:網站(zhàn)建設開(kāi)發有↕(yǒu)哪些(xiē)細節需要(yào)注意?
- 5402024-03-07

- 邯鄲網絡公司:外(wài)貿網站(zhàn)制(zhì)作(zuò)的(de± €♣)8個(gè)步驟
- 3772024-03-05

- 簡單3步,輕松做(zuò)企業(yè)官∞ 網
- 6822024-02-18
