Ubuntu MySQL插入中文出错


今天在写一个小的网站作业,用jsp,在Ubuntu 8.10中向MySQL插入数据,插入英文和数字都可以,但中文就不行。我是把jsp中文的那些全用上了,不管用,试着用 mysql query browser (一个MySQL的GUI工具)在这里插入中文数据,结果就报了incorrect string value .....这个错,我明白原来是mysql的原因。然后就用baidu,用google搜,最后终于解决了,现分享经验如下:

首先停止MySQL服务:sudo /etc/init.d/mysql stop

然后编辑MySQL配置文件:sudo gedit /etc/mysql/my.cnf

在my.cnf文件中的[client]段下面加入

default-character-set=utf8
[mysqld_safe]
default-character-set=utf8
[mysqld]
default-character-set=utf8
[mysql]
default-character-set=utf8

重新启动MySQL服务,

sudo /etc/init.d/mysql start

进入MySQL的命令提示符下输入如下指令:

mysql>show variables like '%char%';

如果出现的列表各项内容和以下相同表明配置成功了,

+----------------------+---------------------
| Variable_name | Value
+-----------------------+---------------------
| character_set_client | utf8
| character_set_connection | utf8
| character_set_database | utf8
| character_set_filesystem | binary
| character_set_results | utf8
| character_set_server | utf8
| character_set_system | utf8
| character_sets_dir | /usr/share/mysql/charsets/

然后把原来的数据库删了,再新建(我就是这样做的,不这样做还是会出错)

现在中文数据能够插入了

成功

Linuxidc免责声明:本文仅代表作者个人观点,与帮客之家无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。

相关内容