zoukankan      html  css  js  c++  java
  • Mybatis出现:无效的列类型: 1111 错误

    在使用Mybatis时,不同的xml配置文件,有的会提示:无效的列类型: 1111

    比如这个sql:

    update base.sys_person t
                     set t.rybh=#{rybh},t.xm=#{xm},t.ryzt=#{ryzt},t.sfzhm=#{sfzhm},t.xb=#{xb},t.sj=#{sj},t.yx=#{yx},t.jtzz=#{jtzz},t.bz=#{bz},t.csrq=#{csrq}
                 where t.ryid=#{ryid}

    在csrq有值时不会报错,csrq为空时会报上述错误:

    原因时什么呢?官方文档显示:

    image

    这句话的意思是,如果对一个属性字段,需要传递null值,(尤其是Date,int等类型时),JDBCType是必要的。(我觉得为了不出错,每个字段都写也是可以的)。

    那好,根据上述文字修改:

    update base.sys_person t
                     set t.rybh=#{rybh},t.xm=#{xm},t.ryzt=#{ryzt},t.sfzhm=#{sfzhm},t.xb=#{xb},t.sj=#{sj},t.yx=#{yx},t.jtzz=#{jtzz},t.bz=#{bz},t.csrq=#{csrq,jdbcType=TIMESTAMP}
                 where t.ryid=#{ryid}

    问题解决。

  • 相关阅读:
    redis事务
    redis杂项
    redis的发布订阅
    redis持久化
    redis常用配置参考.txt
    python语法流程控制
    用户交互与数据类型
    编程语言与Python介绍
    计算机的五大组成部分
    jieba库的基本介绍及爬虫基本操作
  • 原文地址:https://www.cnblogs.com/sdjnzqr/p/4304874.html
Copyright © 2011-2022 走看看