[mybatis]逆向工程生成的xml调用报MySQLIntegrityConstraintViolationException异常解决

    xiaoxiao2022-07-05  183

    需求描述:

    调用逆向工程生成的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,只调用非空属性.

    两类方法间的区别可以以下博客: https://blog.csdn.net/qq_38409944/article/details/82556834

    最新回复(0)