java的jdbc插入的时候,遇到null情况报错问题
分析原因:
在执行SQL时MyBatis会自动通过对象中的属性给SQL中参数赋值,它会自动将Java类型转换成数据库的类型。而一旦传入的是null它就无法准确判断这个类型应该是什么,就有可能将类型转换错误,从而报错。
解决办法:
参数增加jdbcType标识数据类型。(注意:这时候参数{}前统一用#)
<insert id="insert_air_hour" parameterType="java.util.Map">
insert into pollute_hour_gas(mp_id, update_time, data_time, create_time, pollutant_code, flag, outlet_standard, mstatus, astatus, estatus, sstatus, cou_value, avg_value, min_value, max_value, avg_zs, min_zs, max_zs)
values
(#{params.mp_id,jdbcType=VARCHAR},#{params.update_time,jdbcType=TIMESTAMP},#{params.data_time,jdbcType=TIMESTAMP},#{params.create_time,jdbcType=TIMESTAMP},#{params.pollutant_code,jdbcType=VARCHAR},#{params.flag,jdbcType=VARCHAR},
#{params.outlet_standard,jdbcType=VARCHAR},#{params.mstatus,jdbcType=VARCHAR},#{params.astatus,jdbcType=VARCHAR},#{params.estatus,jdbcType=VARCHAR},#{params.sstatus,jdbcType=VARCHAR},
${params.cou_value,jdbcType=NUMERIC},${params.avg_value,jdbcType=NUMERIC},${params.min_value,jdbcType=NUMERIC},${params.max_value,jdbcType=NUMERIC},${params.avg_zs,jdbcType=NUMERIC},${params.min_zs,jdbcType=NUMERIC},${params.max_zs,jdbcType=NUMERIC})
</insert>
下面表格列出所有的jdbc数据类型对照表:


java的jdbc插入的时候,遇到null情况报错问题的更多相关文章
- 普通的jdbc事务在插入数据后 下面的代码报错时 数据不会回滚 但是 spring的事务会回滚
普通的jdbc事务在插入数据后 下面的代码报错时 数据不会回滚 但是 spring的事务会回滚
- SpringCloud使用Feign调用其他客户端带参数的接口,传入参数为null或报错status 405 reading IndexService#del(Integer);
SpringCloud使用Feign调用其他客户端带参数的接口,传入参数为null或报错status 405 reading IndexService#del(Integer); 第一种方法: 如果你 ...
- Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty 报错
项目中遇到的获取https的数据接口数据时,Unexpected error: java.security.InvalidAlgorithmParameterException: the trustA ...
- 出现“java.lang.AssertionError: SAM dictionaries are not the same”报错
运行一下程序时出现“java.lang.AssertionError: SAM dictionaries are not the same”报错 java -jar picard.jar SortVc ...
- guava缓存设置return null一直报错空指针
guava缓存设置return null一直报错空指针 因为缓存不允许返回为空
- java通过jdbc插入中文到mysql显示异常(问号或者乱码)
转自:https://blog.csdn.net/lsr40/article/details/78736855 首先本人菜鸡一个,如果有说错的地方,还请大家指出予批评 对于很多初学者来说,中文字符编码 ...
- java通过jdbc插入中文到mysql显示乱码(问号或者乱码)
对于很多初学者来说,中文字符编码不相同的问题,是一个很烦躁的问题!! 因为很多时候,我们并不知道,到底是哪一层出现了问题? 在这里稍微做个总结~也怕自己今后忘了!! 其实也就三层: 1.前端页面 2. ...
- java 将长度很长的字符串(巨大字符串超过4000字节)插入oracle的clob字段时会报错的解决方案
直接很长的字符串插入到clob字段中会报字符过长的异常,相信大家都会碰到这种情况 String sql = "insert into table(request_id,table_name, ...
- MYSQL timestamp NOT NULL插入NULL的报错问题
1. 在开发两个数据库数据同步功能的时候,需要在本地搭建一个本地的数据库作为一个本地库,然后用于同步开发库中的数据.在插入的时候出现了一个问题. 问题描述: 我们每张表中都会存在一个create_ti ...
- 使用 Mybatis 框架 jdbc 方式批量写入 SQL Server,报错 com.microsoft.sqlserver.jdbc.SQLServerException 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。此 RPC 请求中提供了过多的参数,最多应为2100
这个错是sqlserver抛出来的. 进过验证,上述错误中的2100为插入的总字段数. 比如下面这种插入方式,values后面的一个括号里的字段为30个,那么后面最多只能加70条,即这种批量插入方式一 ...
随机推荐
- CF-937(D,E)
CF-937 在补题-- D 分析 我们发现这些因子都是二进制形式的十进制数,n的范围是$1e5$,16的二进制是$10000$,于是可以枚举1~16,把这些因子预处理出来,对于每个n就枚举因子再作除 ...
- axios-api,js结构化定义、调用业务api接口。
axios-api @no-996/axios-api基于 axios 可建立结构化实例的工具,有以下特点: 基于 axios,兼容 axios 的 api,可无缝的迁移使用. 内置了两种常用的请求终 ...
- #三分,分治,计算几何,prim#JZOJ 3860 地壳运动
题目 \(q\)组询问查询最小生成树,边权为\(u*k1+v*k2\)(\(k1,k2\)每次询问都不同) \(n\leq 35,m\leq 25000,q\leq 200000\) 分析 纯\(\t ...
- 80+产品正通过兼容性测试,OpenHarmony生态蓬勃发展
4 月 25 日,开放原子开源基金会举办了 OpenAtom OpenHarmony(以下简称"OpenHarmony")技术日活动,OpenHarmony PMC 委员代表首次对 ...
- 本周四晚19:00知识赋能第八期第2课丨ArkUI自定义组件
9月21日19:00~20:00,第八期知识赋能第2节直播就要开始啦!本次直播将为同学们带来涂鸦小游戏的趣味体验,让大家全面了解ArkUI框架的应用,帮助你们在自己已有专业的基础上拓宽知识边界,学习 ...
- js推送网页到扩展屏上
需求: 电脑上有两个屏幕,想在主屏上的网页中点击一个按钮,副屏就可以显示需要推送过去的网页 实现方法: 本方法使用的是js来实现的,亲测可行,支持火狐,但是不支持谷歌 demo: 主屏网页:1.htm ...
- DevEco Device Tool 3.1 Release新版本发布,新增资源管理器、SFTP、HDC
原文链接:https://mp.weixin.qq.com/s/UGBirjf8nBjnfKck9TlyWg,点击链接查看更多技术内容: DevEco Device Tool是面向智能设备开发者 ...
- Java入门01:环境安装与配置
Java入门01:环境安装与配置 JDK下载 下载地址:https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads ...
- aop 阶段性概况
前言 对aop进行一个阶段性的总结. 正文 首先什么是aop呢? 那么首先看aop的解决什么样的问题. public class Program { public static void Main(s ...
- 单元测试必备:Asp.Net Core代码覆盖率实战,打造可靠应用 !
引言 在前几章我们深度讲解了单元测试和集成测试的基础知识,这一章我们来讲解一下代码覆盖率,代码覆盖率是单元测试运行的度量值,覆盖率通常以百分比表示,用于衡量代码被测试覆盖的程度,帮助开发人员评估测试用 ...