mysql 中utf8编码存放中文汉字问题
2016-10-17 14:28
197 查看
今天对mysql数据库进行操作时,发现始终存不进数据库,搞了很久才发现这张表字符长度为VARCHAR(20),而我存入的汉字超过了7个!
经过查询才知道汉字字符转换问题,以前也知道,但是并没有引起注意。
干货如下:
只适用mysql5.0以上的版本:
1.一个汉字占多少长度与编码有关:
UTF-8:一个汉字=3个字节
GBK:一个汉字=2个字节
2.varchar(n)表示n个字符,无论汉字和英文,MySQL都能存入n个字符,仅是实际字节长度有所区别
3.MySQL检查长度,可用SQL语言:
select LENGTH(fieldname) from tablename 来查看
经过查询才知道汉字字符转换问题,以前也知道,但是并没有引起注意。
干货如下:
只适用mysql5.0以上的版本:
1.一个汉字占多少长度与编码有关:
UTF-8:一个汉字=3个字节
GBK:一个汉字=2个字节
2.varchar(n)表示n个字符,无论汉字和英文,MySQL都能存入n个字符,仅是实际字节长度有所区别
3.MySQL检查长度,可用SQL语言:
select LENGTH(fieldname) from tablename 来查看
相关文章推荐
- MySQL5.0中文问题及JSP汉字编码问题解决方法
- Linux下MySQL5.6的修改字符集编码为UTF8(解决中文乱码问题)
- mysql导入导出数据中文乱码解决方法小结(1、navicat导入问题已解决,创建连接后修改连接属性,选择高级->将使用Mysql字符集复选框去掉,下拉框选择GBK->导入sql文件OK;2、phpmyadmin显示乱码的问题也解决,两步:1.将sql文件以utf8的字符集编码另存,2.将文件中sql语句中的字段字符集编码改成utf8,导入OK)
- MySql中UTF8 和 GBK 编码中文字符长度问题
- Linux/Windows下MySQL5.6的修改字符集编码为UTF8(解决中文乱码问题)
- Linux下MySQL5.6的修改字符集编码为UTF8(解决中文乱码问题)
- Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)
- Linux下MySQL5.6的修改字符集编码为UTF8(解决中文乱码问题,亲测可用!)
- MySql中UTF8 和 GBK 编码中文字符长度问题
- Linux下MySQL的修改字符集编码为UTF8(解决中文乱码问题)
- MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解决方法总结
- Mysql中文乱码问题完美解决方案【需要在my.cnf文件中设置client和mysqld的default-character-set=utf8,建数据库和表的时候也需要制定好编码】
- CentOS 7下MySQL5.6的修改字符集编码为UTF8(解决中文乱码问题)
- 【转贴】Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)
- (原创)Linux下MySQL 5.5/5.6的修改字符集编码为UTF8(彻底解决中文乱码问题)
- 连接mysql server 5.0 数据库的乱码问题,utf8编码,中文正确显示
- Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)
- Linux下MySQL5.6的修改字符集编码为UTF8(解决中文乱码问题)
- Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)
- Linux下MySQL5.6的修改字符集编码为UTF8(解决中文乱码问题)