SQL state [HY000]; error code [1366]; #HY000; nested exception is java.sql.SQLException: #HY000

7 篇文章 0 订阅
5 篇文章 0 订阅

问题描述:
mysql数据库插入数据时报1366错误。。

问题查找:
1、通过 SHOW VARIABLES LIKE ‘character%’; 命令查看看字符编码,未发现编码有问题。
在这里插入图片描述
2、查看表中的字符编码:SHOW FULL COLUMNS FROM table_name; 未发现问题

在这里插入图片描述
到这里我都懵逼 了。。完全不知道为毛出错。。。好吧,其实想想,之前存储一直没有报错。。。那就把SQL语句抓出来,一个个分析吧。。。

问题发现:
有个字段类型为:bigint,实际存储时存入的是Varchar,而之前一直没报错,是因为存储的数字类型的字符串,所以这个问题才会一直没有出现。。。而这次存储是带有英文字符的值,所以报错了。。

修复:
修改报错的字段类型为varchar,问题解决。

总结:
MYSQL 报1366错误,可能并不是因为字符编码问题,也有可能是类型不匹配造成的。留个记录,以便备查。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值