使用utf-8編碼的好處:
1,國際化,能包容其他編碼
2,在用java開發(fā)的時候,省去了煩人的漢字編碼問題
把mysql從gb2312轉(zhuǎn)到utf-8的方法:
環(huán)境:win2000 server,mysql 4.1.11-nt
1,導(dǎo)出原來的數(shù)據(jù)
>mysqldump --opt --default-character-set=latin1 --user=root --password company>company.sql
或>mysqldump --opt --default-character-set=gb2312 --user=root --password company>company.sql
導(dǎo)出后查看是否正確,漢字顯示正常即可
2,重裝mysql server,把缺省編碼設(shè)置為utf-8
不重新安裝server也可以,只要把數(shù)據(jù)庫,數(shù)據(jù)表編碼轉(zhuǎn)成utf-8就可以了。
我重裝以后,用show variables顯示為:
mysql> show variables;
+---------------------------------+--------------------------+
| Variable_name | Value |
+---------------------------------+--------------------------+
| back_log | 50 |
| basedir | C:\mysql\ |
| binlog_cache_size | 32768 |
| bulk_insert_buffer_size | 8388608 |
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | utf8 |
| character_set_results | latin1 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\mysql\share\charsets/ |
| collation_connection | latin1_swedish_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
3,用editplus v2.12打開導(dǎo)出的腳本文件,在前面加上:
SET NAMES utf8;
SET CHARACTER_SET_CLIENT=utf8;
然后把文件另存為utf-8編碼的格式
如果腳本文件中有指定數(shù)據(jù)表編碼的語句,如"DEFAULT CHARSET=latin1",需要全部刪掉
4,導(dǎo)入數(shù)據(jù)
>mysql -uroot -p company<company.sql
5,檢查是否正確
回復(fù) 更多評論