首页 > 数据库 >Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET

Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET

时间:2024-11-23 10:44:29浏览次数:12  
标签:SET Java string CHARACTER value JSON Cannot 报错 Data

一、现象

在Java中,使用mybatis-plus更新实体类对象到mysql,其中一个字段对应数据库中json数据类型,更新时报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.

image

报错信息:

Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
; Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.; nested exception is com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.

二、排查

实体类,已配置字段转换器及映射关系。

image

image

上述使用lambdaUpdate()方法,直接set,list集合未被转换json字段,导致存储mysql失败

三、解决

方式1

使用updateById方法,以对象更新

image

方式2

手动转换json,存储成功

image

标签:SET,Java,string,CHARACTER,value,JSON,Cannot,报错,Data
From: https://www.cnblogs.com/ccdm/p/18564210

相关文章

  • java: 警告: 源发行版 17 需要目标发行版 17,怎样解决
    这个警告信息“java:警告:源发行版17需要目标发行版17”通常意味着你的项目代码使用了Java17的特性,但是编译器的目标版本设置却不是Java17,这可能会导致编译和运行时错误。为了解决这个问题,你可以采取以下几种方法之一:确保IDE和JDK版本一致:检查你的开发环境(如IntelliJID......
  • JavaScript 运行机制
    JavaScript是单线程的脚本语言,其运行机制主要基于事件循环(EventLoop)。执行栈(CallStack)执行栈是一个存储函数调用的栈结构。当JavaScript代码开始执行时,首先会有一个全局执行上下文(GlobalExecutionContext)被压入执行栈。当遇到函数调用时,一个新的函数执行上下文会被创......
  • JavaScript语法基础——变量,数据类型,运算符和程序控制语句(小白友好篇,手把手教你学会!)
     一、JavaScript概述JavaScript是一种高级编程语言,常用于网页开发和服务器端应用程序。它是一种动态类型语言,可以在浏览器中直接解释执行,而不需要编译。脚本(Script)是一种与计算机程序相关的指令集或代码块,用于执行特定的任务或操作。脚本通常用于自动化重复性的任务或进行特......
  • 堪称2024最强Java八股文面试题汇总
    1.Java的基本数据类型有哪些?答:Java的基本数据类型包括:整型:byte, short, int, long浮点型:float, double字符型:char布尔型:boolean2.Java中的变量作用域有哪些?答:Java中的变量作用域主要有:类变量(静态变量):作用域为整个类,可以在类的任何地方访问。实例变量:作用域为类的非......
  • 免费送源码:Java+ssm+Springboot Springboot小型仪器公司生产管理系统 计算机毕业设计
    摘要本论文主要论述了如何使用java语言开发一个Springboot小型仪器公司生产管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述小型仪器公司生产管理系统的当前背景以及系统开发的目的,后续章节将严格按......
  • 免费送源码:Java+ssm+MySQL+Ajax ssm第二课堂管理系统 计算机毕业设计原创定制
    摘要随着互联网的高速发展,教育进入了信息化时代,促使了多种混合式教学模式的出现。第二课堂管理系统是这一时期新型混合式教学模式的代表,它的出现改变了传统教学模式,将知识传递置于课前,将学习知识的主动性交给学生,促使学生的素质全面发展。第二课堂管理系统以“以学生为......
  • java+vue计算机毕设二手交易平台的设计实现【开题+程序+论文+源码】
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着互联网技术的迅猛发展和电子商务的日益普及,人们的消费观念逐渐转变,对于闲置物品的再利用需求日益增长。二手交易平台作为一种新兴的电子商务模式,......
  • 基于Java+SpringBoot+Vue+HTML5人事管理系统(源码+LW+调试文档+讲解等)/人力资源管理/
    博主介绍......
  • Beyond Compare主进程因7zxa.dll报错崩溃,解决Beyond Compare中7zxa.dll文件丢失或损坏
    在使用BeyondCompare这款强大的文件和文件夹比较工具时,用户可能会遇到主进程因7zxa.dll文件报错而崩溃的问题。7zxa.dll是一个动态链接库文件,虽然它原本是为7-Zip压缩软件设计的,但在某些情况下,它可能会与BeyondCompare产生关联并导致错误。本文将详细介绍如何解决BeyondComp......
  • 每日OJ题_牛客_AB20走迷宫_BFS_C++_Java
    目录牛客_AB20走迷宫_BFS题目解析C++代码Java代码牛客_AB20走迷宫_BFS走迷宫_牛客题霸_牛客网(nowcoder.com)描述:        给定一个n×m的网格,在网格中每次在不超过边界的情况下可以选择向上、向下、向左、向右移动一格。网格中的一些格子上放置有障碍物,放有......