MySQL 不能插入中文和显示中文
来源:互联网 发布:java中间件启动spring 编辑:程序博客网 时间:2024/05/02 00:38
1:Windows平台,因为Windows操作系统默认的是用了gb2312这个字符,而mysql在安装的时候,默认的是客户端和服务器都用了latin1,所以这就导致一个字符集和字符校验不匹配的问题,这个时候只需要找到mysql的配置文件my.ini 找到default-character_set ,把他的参数改成gb2312就可以了,一共有两个这样的参数,一个是对客户的,一个是服务器的,我一般建议是把服务器的设置成国际通用的字符utf8。
2: Linux平台,在Linux平台上安装mysql的时候,给于的自由度是很大的,你可以在安装选项./configure中找到数据库的字符设置(这个还要麻烦你自己看readme安装文件 ),这个时候最好是把字符设置成gbk,因为这个字符集也是Linux平台默认安装的中文字符集,然后在/etc下找到my.cnf文件(这个文件在安装mysql后要自己把他转移到/etc/下,除非你是rpm安装).需要注意的是Linux里的很多工具都是不支持中文的,哪怕是vi,你可以在startx后执行命令kwrite,来编译文件,这个图形变异软件有一个选项是可以把你所写的东西转换成任意的字符集,很不错。
二)不能插入中文解决办法:
向表中插入中文然后有错误。
mysql> insert into users values(88,'中文');
ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column 'usern
ame' at row 1
mysql> insert into users values(88,'中文');
ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column 'usern
ame' at row 1
还要更改users表的username的字符集。
mysql> alter table users modify username char(20) character set gbk;
ERROR 1366 (HY000): Incorrect string value: '\xC0\xEE\xCB\xC4' for column 'usern
ame' at row 1
mysql> alter table users modify username char(20) character set gbk;
ERROR 1366 (HY000): Incorrect string value: '\xC0\xEE\xCB\xC4' for column 'usern
ame' at row 1
因为表中已经有数据,所以更改username字符集的操作没有成功
清空users表中的数据
mysql> truncate table users;
Query OK, 3 rows affected (0.01 sec)
从新更改user表中username的字符集
mysql> alter table users modify username char(20) character set gbk;
Query OK, 0 rows affected (0.06 sec)
Records: 0 Duplicates: 0 Warnings: 0
这时再插入中文字符,插入成功。
mysql> insert into users values(88,'中文');
Query OK, 1 row affected (0.01 sec)
mysql> select * from users;
+--------+----------+
| userid | username |
+--------+----------+
| 88 | 中文 |
+--------+----------+
1 row in set (0.00 sec)
- mysql 不能插入中文和显示中文
- mysql 不能插入中文和显示中文
- MySQL 不能插入中文和显示中文
- mysql 不能插入中文和显示中文
- MySQL 不能插入中文和显示中文
- mysql 不能插入中文和显示中文
- Mysql不能插入中文和中文显示乱码问题
- MySql不能插入中文
- MYSQL 不能插入中文!!!
- mysql不能插入中文字符以及中文显示乱码问题
- mysql不能显示中文
- Mysql不能插入中文(彻底解决)
- 解决MySQL不能插入中文
- mysql不能插入中文数据
- mysql 插入中文和显示中文的方法
- MySQL不能显示中文问题
- mysql中插入和显示中文字符问题
- mysql数据库无法插入和显示中文字符
- 八、PYTHON数据库MYSQL的操作
- shell脚本中使用ftp进行文件的上传
- 逆向一些blog收藏
- 如何利用DBMS_LOGMNR包挖掘在线日志
- 密码安全与加密-提升千百倍的密码安全
- MySQL 不能插入中文和显示中文
- C++调用C
- 从system返回值中获得程序退出码
- Radiobutton 设置drawtop图片大小
- IOS学习 ARC下__bridge
- RobotFramework+Selenium2的入门与提高
- 翻译:Linux的电源管理架构
- Android scroll的封装器Scroller (一)
- Qt5.4 安装包的区别及配置调试器的问题