MySQL数据库tinyint(1)类型字段,通过【集成云数据库直连】方式进行数据写入时相关问题详解原创
金蝶云社区-集成服务云_孙文
集成服务云_孙文
1人赞赏了该文章 111次浏览 未经作者许可,禁止转载编辑于2024年07月24日 11:26:14

image.png

image.png


针对MySQL数据库中,tinyint(1)类型字段,在进行数据同步时,方案配置层面将对应该目标字段直接赋值为1,通过日志看对应的目标数据已经转换为true,但对应方案执行失败:


image.png


原因分析:

JDBC与MySQL类型互转时是按下面清单进行转换的

image.png

通过调试发现,对应JDBC会默认把tinyint转换为bit,在执行execut时,即使对应所传参数为BIT,且值为Boolean,在执行时则会报错,通过网上资料搜索,MySQL数据库存在参数:tinyInt1isBit,且默认为true,故尝试在连接配置登记时,将该参数改为:tinyInt1isBit=false,不使用默认的将tinyint转为bit,保持其原始类型进行测试:

image.png此时保持集成方案原有配置不变,重新执行方案,数据可正常写入入库。

赞 1