MySQL  - 讨论区

标题: 彻底解决MySql在UTF8字符集下乱码问题

2010年11月22日 星期一 13:17

为了顺利的 开发 一个多语言的国际化J2EE程序,需要修改 数据 库字符集,我的做法如下:  0 |* J! j) O- w. F8 d) ?* b

安装 MySq时选择字符集为UTF-8 
7 A2 ^  D* z( S9 U" F2 @2 ]7 L
修改MySql安装目录下的my.ini中配置的默认编码: 
文件 中有两处这样的配置:default-character-set=latin1  " r7 V* l& @% }( S0 W8 M- {
将这两处改成:default-character-set=utf8 

新建 数据库 需指定字符集:  3 P; \/ a! R$ w2 A' K
UTF8: CREATE DATABASE mmtye DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;  8 O% c3 u$ n# l: T5 [0 F0 Q0 v2 ^
( p  S' t/ v+ ^
在命令行查看字符集编码:show variables like '%char%'; 会看到如下信息:  ' o4 I5 t5 I' k  y( V
character_set_client     | utf8 
character_set_connection | utf8 
character_set_database   | utf8 
character_set_filesystem | binary 
character_set_results    | utf8  7 B3 p6 }2 ?; w2 [& v# q
character_set_server     | utf8  4 d3 J! i: |+ c  l6 h
character_set_system     | utf8 
character_sets_dir       | D:\ MySQL \share\charsets\  1 H! f/ h; J7 G/ {5 b
* x. \. C7 d9 A, F
以上内容在重启MySql后也一直有效,无需每次启动数据库都要指定。 
& {. P: z6 i; ]& l$ D$ {
A、为了在命令行下能正确查看中文,命令行下执行:  ! B# O, L4 {+ _9 P0 {9 B
set character_set_results=gbk;  & p3 V' g+ _* X1 H5 v% n3 }

B、若需要在windows命令行执行insert、update,则执行: 
set character_set_client=gbk; 
A、B 两个命令重启数据库前有效,重启后就失效了。

转自

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号