Hibernate Data too long for column 'name' at row 1 已解决!【原创】

Data truncation: Data too long for column 'name' at row 1

当日志无情的抛出这条鬼东西的时候,坐在电脑前的可能还没有贴心女友的你正郁闷着,正后悔当初为什么会选择程序员这条该死的不归路!没事!让我来拯救IT界!

说是长度过长,可是看表设计就知道长短了,我还是觉得是中文乱码或说是编码的问题,有一招万试万灵的方法,可以用来解决中文乱码问题,想不到也可以结局Hibernate的Data truncation: Data too long for column 'name' at row 1问题:

对于这种情况有种很简单的做法,无非就是GB2312和ISO8859_1的互转,不是这个转为那个就是那个转为这个,我尝试过的,都可以解决

String memo = request.getParameter("memo").trim();
memo = new String(memo.getBytes("GB2312"),"ISO8859_1");

 

 

祝各位IT精英早日脱离苦海!娶个好老婆,生个好娃(男女一样),照顾好父母长辈,好好过好一辈子!

祝福!!!

 

 

以下给出在网上搜索到的相关其他解决方法:

 

网上有很多对这类问题的解决方法。只是说我的经历的总结。这类问题也不能算是什么大的问题,但是有时候重装了Mysql数据库以后,编码没有注意用到中文。。没有什么可视化的工具
创建的一些表会出现这样的问题:英文插入到表中没有任何问题。但是插入中文的时候就出现 Data truncation: Data too long for column 'name' at row 1 类似的问题。

mysql能把英文字段插如数据库了 当我输入中文时他就出现字段Data truncation: Data too long for column 'name' at row 1
我使用朋友的这个方法:(1)修改 $mysql_path$\my.ini(MySQL Server Instance Configuration 文件)
设置default-character-set=gbk(注意,有2处)
(2)修改data目录中相应数据库目录下的db.opt配置文件
default-character-set=gbk
default-collation=gbk_chinese_ci
重起mysql,就ok了.
(注:如果表是在没有改之前的,一定要重新创建,否则表还是以前的编码,还是不能插入
中文数据)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值