博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[mybatis]逆向工程生成的xml调用报MySQLIntegrityConstraintViolationException异常解决
阅读量:2216 次
发布时间:2019-05-07

本文共 500 字,大约阅读时间需要 1 分钟。

需求描述:

调用逆向工程生成的mapper层方法.

错误描述:

调用updateByExample()方法时就会报错:

Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column ‘id’ cannot be null

; SQL []; Column ‘id’ cannot be null; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column ‘id’ cannot be null

错误原因:

调用的mapper方法为Example后缀(如updateByExample),这类方法对对象中的每个属性都会调用,出现null即报错.

解决方法:

应该调用ExampleSelective后缀的方法(如updateByExampleSelective),这类方法是动态sql,只调用非空属性.

两类方法间的区别可以以下博客:

转载地址:http://dnzfb.baihongyu.com/

你可能感兴趣的文章
tomcat连接超时
查看>>
谈谈编程思想
查看>>
iOS MapKit导航及地理转码辅助类
查看>>
检测iOS的网络可用性并打开网络设置
查看>>
简单封装FMDB操作sqlite的模板
查看>>
iOS开发中Instruments的用法
查看>>
强引用 软引用 弱引用 虚引用
查看>>
数据类型 java转换
查看>>
"NetworkError: 400 Bad Request - http://172.16.47.117:8088/rhip/**/####t/approval?date=976
查看>>
mybatis 根据 数据库表 自动生成 实体
查看>>
C结构体、C++结构体、C++类的区别
查看>>
进程和线程的概念、区别和联系
查看>>
CMake 入门实战
查看>>
绑定CPU逻辑核心的利器——taskset
查看>>
Linux下perf性能测试火焰图只显示函数地址不显示函数名的问题
查看>>
c结构体、c++结构体和c++类的区别以及错误纠正
查看>>
Linux下查看根目录各文件内存占用情况
查看>>
A星算法详解(个人认为最详细,最通俗易懂的一个版本)
查看>>
利用栈实现DFS
查看>>
(PAT 1019) General Palindromic Number (进制转换)
查看>>