ITKeyword,专注技术干货聚合推荐

注册 | 登录

oracle迁移到mysql时insert数据到mysql text字段发现报字段不够长的问题

lidan3959 分享于 2013-12-04

2019阿里云全部产品优惠券(新购或升级都可以使用,强烈推荐)
领取地址https://promotion.aliyun.com/ntms/yunparter/invite.html


今天开发说在从oracle迁移数据到msyql的测试过程中出现字段长度不够的问题,第一反应是字段设置太短,但是看过字段后发现不是这么简单

错误代码:

java.sql.BatchUpdateException: Data truncation: Data too long for column 'conditions' at row 1  

错误截图:


oracle 字段类型和长度:

varchar(4000)

mysql 字段类型和长度

text (uft8)

按道理插入不了这不因该

然后开始查找原因:

查看linux 系统变量 env 发现系统字符集为:

LANGUAGE=zh_CN.GB18030:zh_CN.GB2312:zh_CN

再次查看mysql配置my.cnf 查看字符集设置

[client]

#default-character-set = utf8
[mysqld]

character-set-server=utf8

发现客户端的字符集配置被注释了

打开后重启数据库,发现问题解决。


方法2:

在数据库连接参数中指定客户端字符集为utf8或set names utf8 都是可以的


先简单写到这吧,突然心头涌起一股蛋蛋的忧伤。

今天开发说在从oracle迁移数据到msyql的测试过程中出现字段长度不够的问题,第一反应是字段设置太短,但是看过字段后发现不是这么简单 错误代码: java.sql.BatchUpdateException: Data truncat

相关阅读排行


用户评论

游客

相关内容推荐

最新文章

×

×

请激活账号

为了能正常使用评论、编辑功能及以后陆续为用户提供的其他产品,请激活账号。

您的注册邮箱: 修改

重新发送激活邮件 进入我的邮箱

如果您没有收到激活邮件,请注意检查垃圾箱。