当前位置: 首页 > article >正文

保存数据到Oracle时报错ORA-17004: 列类型无效: 1111

1、问题描述:

关键信息:Mybatis;Oracle

(1)保存信息到Oracle时报错:

Caused by: org.apache.ibatis.type.TypeException: Error setting null for parameter #10 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: ORA-17004: 列类型无效: 1111

(2)Oracle字段:

TRX_CHANL VARCHAR2(2) DEFAULT '',  

varchar 类型   可空

(3)mapper.xml

<resultMap id="baseResultMap" type="com.xxx.infra.po.XXXInfoPO">
    <result column="trx_chanl" jdbcType="VARCHAR" property="trxChanl"/>
</resultMap>

<insert id="insert" parameterType="com.xxx.infra.po.XXXInfoPO">
        insert into xxx_info (msg,trx_chanl) values (#{msg},#{trxChanl})
</insert>

2、解决

XXXInfoPO 没有给 属性trxChanl赋值时,保存Oracle就会报错  列类型无效: 1111,这时需要给属性trxChanl 指定属性的类型  #{trxChanl,jdbcType=VARCHAR (注意没有"")。这点Oracle跟MySQL是不一样的

<insert id="insert" parameterType="com.xxx.infra.po.XXXInfoPO">
 insert into xxx_info (msg,trx_chanl) values (#{msg,jdbcType=VARCHAR},#{trxChanl,jdbcType=VARCHAR})
</insert>


http://www.kler.cn/a/397442.html

相关文章:

  • 群控系统服务端开发模式-应用开发-前端图片格式功能开发
  • Servlet⽣生命周期超级细(笔记)
  • .netcore + postgis 保存地图围栏数据
  • 黑盒测试案例设计方法的使用(1)
  • 路漫漫其修远兮,吾将上下而求索---第一次使用github的过程记录和个人感受
  • Python读写Excel的全面教程
  • 【第四期书生大模型实战营基础岛】L1G4000——LlamaIndex+InternLM RAG 实践
  • C语言模块化概述
  • LeetCode100之环形链表(141)--Java
  • HashMap源码分析上-红黑树
  • 「Mac玩转仓颉内测版7」入门篇7 - Cangjie控制结构(下)
  • [系统安全] PE文件知识在免杀中的应用
  • Spring:DI依赖注入的方式
  • Kafka 到 Kafka 数据同步
  • 牛客挑战赛77
  • PHP反序列化靶场(php-SER-libs-main 第一部分)
  • Servlet⾥面的doPost-doGet和路路径匹配讲解(笔记)
  • 第 11 章 - Go语言函数
  • Python爬虫下载新闻,Flask展现新闻(2)
  • JS学习日记(jQuery库)
  • webman使用中间件验证指定的控制器及方法[青锐CC]
  • ubuntu20.04安装FLIR灰点相机BFS-PGE-16S2C-CS的ROS驱动
  • Redisson 中开启看门狗(watchdog)机制
  • 不用来回切换,一个界面管理多个微信
  • FPGA使用Verilog实现CAN通信
  • “高级Java编程复习指南:深入理解并发编程、JVM优化与分布式系统架构“