美文网首页我爱编程
com.mysql.jdbc.MysqlDataTruncati

com.mysql.jdbc.MysqlDataTruncati

作者: lcjyzm | 来源:发表于2018-04-13 10:25 被阅读101次
    ### The error may involve com.restyle.api.dao.mybatis.WatchUserMapper.insertSelective-Inline
    ### The error occurred while setting parameters
    ### Cause: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Division by 0
    ; SQL []; Data truncation: Division by 0; nested exception is com.mysql.jdbc.MysqlDataTruncation: Data truncation: Division by 0
            at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:102)
    

    以前用的是mysql5.6.x没问题,更新到mysql5.7.x后出现了这个问题:

    1, 看系统日志Division by 0就各种折腾,数据库降级,没成功;
    2, 最后发现是新增数据时在触发器中使用了TRUNCATE(NEW.FIGHT_WINN / NEW.FIGHT_COUNT,2) * 100,所以提示报错;
    3, 数据库以及各种配置文件在修改前要备份,数据库要以脚本形式备份;
    4, 数据库中尽量不要使用视图,触发器,函数之类的,以免给自己挖坑,尤其是sql逻辑不严谨的问题;

    相关文章

      网友评论

        本文标题:com.mysql.jdbc.MysqlDataTruncati

        本文链接:https://www.haomeiwen.com/subject/tatckftx.html