热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

关于mysql与sqlserver数据同步中的一次Incorrectstringvalue:'\xA4\x9F2003...'forcolumn异常

最近在开发数据同步系统的过程中从Sqlserver数据库往mysql数据库同步数据的过程中遇到了一个问题。问题是这样的Incorrectstringvalue:\xA4\x9F2003

最近在开发数据同步系统的过程中从Sqlserver数据库往mysql数据库同步数据的过程中遇到了一个问题。

问题是这样的

Incorrect string value: '\xA4\x9F2003...' for column 'BackgroundIntro' at row 1

表中这个两个字段定义的数据类型分别为

mysql  ====>  BackgroundIntro longtext 

sqlserver ====> BackgroundIntro text 

字符集:utf8 -- UTF-8 Unicode

排序规则:utf8_general_ci

以上都以sqlserver的对应,并且将存在乱码问题无法入库的单条数据单独拿出来插入也是可以正常入库的,但经过程序处理再入库则出现了异常,

正常情况应该是可以进入的才对,经过一番查找终于发现了原因:

发现自己在mysql设置数据连接的时候设置的是:jdbc:mysql://127.0.0.1:3306/db?autoRecOnnect=true

于是将数据库连接的编码也指定为utf-8连接,修改为:

jdbc:mysql://127.0.0.1:3306/db?useUnicode=true&characterEncoding=utf8&useSSL=false&autoRecOnnect=true&zeroDateTimeBehavior=convertToNull


问题得到了很好的解决。



推荐阅读
author-avatar
路人
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有