mysql insert中文乱码无法插入ERROR 1366 (HY000): Incorrect string value
ERROR 1366 (HY000): Incorrect string value: '\xB1\xEA\xCC\xE2\xD5\xE2...' for column 'title' at row 2
MYSQL经典问题:
(ERROR 1366 (HY000): Incorrect string value:'\xD5\xD4' for column 'name' at row 1)
网上有好多解决中文乱码的贴, 大致都讲的是修改 %MYSQL_DIR%/my.ini default-character-set=gbk 什么的
我试过了, 不起作用. (可能是我没处理到位)
下面是我琢磨了半天,得到的结果, 不知道是否值得提倡, 但目的绝对达到了:
登陆mysql --->
进入相应数据库--->
输入命令: show variables like '%char%';
得到:
+--------------------------+--------------------------+
| Variable_name | Value |
+--------------------------+--------------------------+
| character_set_client utf8
| character_set_connection utf8
| character_set_database latin1
| character_set_filesystem binary
| character_set_results utf8
| character_set_server utf8
| character_set_system utf8
| character_sets_dir D:\MySQL\share\charsets\
+--------------------------+--------------------------+
如果出现上述情况则需要更改数据库编码: 两种方法, 第一种是一次搞定, 第二种只对当前连接有效,断开连接,恢复更改前状态
方法1: alter database 数据库名 charset utf8;
方法2: set character_set_database = utf8;
再用命令: 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 D:\MySQL\share\charsets\
+--------------------------+--------------------------+
此时编码已经一致, 但是,对数据库中的表进行插入中文字符操作, 仍然会报 : ERROR 1366 (HY000)
---> set character_set_client = gbk; 设置插入时接收的编码为GBK, 这样就可以插入中文了
此时中文字符已经可以插入, 但查询结果却还是乱码, 再更改一处即可:
---> set character_set_results = gbk; 设置输出结果的编码为GBK
注: 这样的设置只对当前连接有关, 连接断开, 这些设置恢复数据库默认设置状态,因此,如果需要,每次连接都得设置!
另外:ERROR 1366 (HY000)错误主要出现于控制台(cmd/黑窗口) 执行SQL语句插入中文时弹出,
用mysql-front 软件插入时不会报字符问题, java通过JDBC连接数据库执行executeUpdate("insert 语句") 中文也能成功插入数据且不会报错!
PHP解决乱码问题只需在连接后加入mysql_query("set names 'gbk'") 就OK!
如: $conn = mysql_connect("localhost","root","");
mysql_query("set names 'gbk'");
mysql insert中文乱码无法插入ERROR 1366 (HY000): Incorrect string value的更多相关文章
- Mysql插入中文时提示:ERROR 1366 (HY000): Incorrect string value: '\xE5\x8F\xB0\xE5\xBC\x8F...' fo
Mysql插入数据时提示:ERROR 1366 (HY000): Incorrect string value: ‘\xE5\x8F\xB0\xE5\xBC\x8F…’ fo 分析如下: 首先通过语句 ...
- ERROR 1366 (HY000): Incorrect string value: '\xE9\x83\x91\xE5\xB7\x9E' for column 'aa' at row 1 MySQL 字符集
ERROR 1366 (HY000): Incorrect string value: '\xE9\x83\x91\xE5\xB7\x9E' for column 'aa' at row 1创建表之后 ...
- mysql 插入中文时出现ERROR 1366 (HY000): Incorrect string value: '\xC0\xEE\xCB\xC4' for column 'usern ame' at row 1
1 环境: MySQL Server 6.0 命令行工具 2 问题 : 插入中文字符数据出现如下错误: ERROR 1366 (HY000): Incorrect string value: '\ ...
- mysql DOS中中文乱码 ERROR 1366 (HY000): Incorrect string value: '\xC4\xEA\xBC\xB6' for column 'xxx' at row 1
问题:ERROR (HY000): Incorrect string value: 在DOS中插入或查询中文出现乱码 登入mysql,输入命令:show variables like '%char%' ...
- MySQL ERROR 1366(HY000) Incorrect string value
有以下两张表: mysql> show tables; +---------------+ | Tables_in_old | +---------------+ | book | | pres ...
- Linux MySQl 5.7.17 MySQL ERROR 1366(HY000):Incorrect string value 解决方法
MySQL ERROR 1366(HY000):Incorrect string value,在往数据库中插入中文的时候会出现. 这也就是编码问题,网上大部分都是说设置下配置文件中的设置,而可悲的是在 ...
- ERROR 1366 (HY000): Incorrect string value:MySQL数据库、表的字符集为GBK
mysql> update userinfo set MEDIASOURCE = 'CS02-北京' where IMPORTNO = 'IMP201640613101206';ERROR 13 ...
- ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column XXX at row 1
本错误为:该列的插入格式有误 修改该表中该列的字符集为utf-8 网上办法: )不能插入中文解决办法: 向表中插入中文然后有错误. mysql> insert into users values ...
- ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'name' at row 1
ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'name' at row 1 数据库字符集问 ...
随机推荐
- os x 10.10 測试版系统下载 swift语言学习资料下载
http://pan.baidu.com/s/1eQ5oj1S 这是下载地址 ! 刚学完oc 就出了 swift!这---- 只是还是非常高兴看了一点swith得东西感觉 ...
- vim中对文本的选择
本文主要解说vim中对文本的选择,vim中选择文本分为: (1)选择字符 ---- 命令行模式下输入小写v (2)选择行 ---- 命令行模式下输入大写V (3)选择块 ---- ...
- 获取系统的IP
如何获取Linux系统的ip.当时一直用这种方法获取IP的. ifconfig|grep 'Bcast'|awk -F ':' '{print $2}'|awk '{print $1}' 今天偶然发现 ...
- Eclipse自动生成作者、日期注释等功能设置(转载)
在使用Eclipse 编写Java代码时,自动生成的注释信息都是按照预先设置好的格式生成的. 修改作者.日期注释格式:打开Windows->Preferences->Java->Co ...
- dojo.byId、dojo.query、dojo.attr
概述: dojo.byId(/*string*/id或/*DomNode*/node) 1.传入DOMNode返回传入的domNode; 2.传入id返回id为当前值的domNode dojo.que ...
- java菜鸟篇<二> eclipse启动tomcat报错的问题:Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "main"
9.1今天不知道自己瞎搞eclipse的时候按到了什么键,然后再启动程序的时候就会报错: 如下: Exception: java.lang.OutOfMemoryError thrown from t ...
- VS2010编译时出现错误1 error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
需要下载VS2010的补丁包
- AngularJs中关于ng-class的三种使用方式说明
在开发中我们通常会遇到一种需求:一个元素在不同的状态需要展现不同的样子. 而在这所谓的样子当然就是改变其css的属性,而实现能动态的改变其属性值,必然只能是更换其class属性 这里有三种方法: 第一 ...
- vi所有特殊字符
vi5个特殊字符包含 /.^.$.*.. 在vi中用/查找时,()不做为特殊字符处理 比如:查找字符串(cyg_uint8 *)b 应该这样写 /(cyg_uint8 \*)b 只有 * 需要转义 \ ...
- python实现zabbix_sender的socket通信代码样例
sk = socket.socket() sk.connect(self.ip_port) sk.settimeout(5) sk.sendall(b'ZBXD\x01') sk.sendall(b' ...