解决SQL Error: 0, SQLState: S1009,Invalid value for getLong() - 'XX'的问题
内容简介
今天遇到一个异常,报出消息为SQL Error: 0, SQLState: S1009,Invalid value for getLong() - 'PH',排查问题后,结果令人哑然失笑,也许Ctrl+C,Ctrl+V让程序员们用的很娴熟,但Ctrl+V之后还是要细心检查代码。
异常

看到这个信息,第一反应是执行SQL出错了,检查了参数,数据库字段的类型定义,没啥问题,把参数替换后在Navicat中也能执行并有结果
代码:
@Query(value = "select * from t_water_quality_evaluate where ITMID = :itMid AND WQGLLV < :wqgValue AND WQGULV >= :wqgValue limit 1",nativeQuery = true)
TwaterQualityEvaluate queryByItMidAndValue(@Param(value = "itMid") String itMid, @Param(value = "wqgValue") BigDecimal wqgValue);
字段字义:

执行结果:

这是啥问题呢?我们看信息第二句:Invalid value for getLong() - 'PH',问题出现在itMid这个参数上,我们传入值"PH",这是个varchar类型,却使用getLong获取值,赶紧看看实体类的定义:

看到了吗?定义了Long类型!改为String后就OK了。
这个问题明显是在编写实体类时,itMid的定义复制了上面id的代码,只改了名称,没有改类型造成的!
嗯,Ctrl+V之后,还是要细心一些好。
解决SQL Error: 0, SQLState: S1009,Invalid value for getLong() - 'XX'的问题的更多相关文章
- 数据库异常:SQL Error: 0, SQLState: S0022
问题描述 在本地搭建 mysql + MyEclipse + tomcat,系统跑起来之后,调用自己写的查询接口,报错“SQL Error: 0, SQLState: S0022” 具体报错: - ...
- MySQL数据库”mysql SQL Error:1146,SQLState:42S02 “解决方法
项目在开发的时候在Mac平台下开发的,开发完了之后在LINUX环境上部署好之后,运行时MySQL数据库报错,提示为某个表不存在之类的错误信息,后来修改了MySQL的配置文件将大小写敏感去掉,问题解决. ...
- [org.hibernate.engine.jdbc.spi.SqlExceptionHelper]SQL Error: 1064, SQLState: 42000问题的解决办法
[org.hibernate.engine.jdbc.spi.SqlExceptionHelper]SQL Error: 1064, SQLState: 42000问题的解决办法. 出现这种情况的原因 ...
- SQL Error: 1064, SQLState: 42000 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version
-- ::, WARN [org.hibernate.util.JDBCExceptionReporter:] - SQL Error: , SQLState: -- ::, ERROR [org.h ...
- (Clob的写入和读取-java)更新数据库报错:SQL Error: 1461, SQLState: 72000 ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值
原 因:某一个字段本为varchar2(1024),但是实际要插入的值超过varchar2允许的最大长度4000时,oracle自动将该字段值转化为Long类型,然后提示插入操作失败. 解决办法: 1 ...
- SQL Error: 1064, SQLState: 42000
这个错误是因为mysql有些关键字被我们用了,需要更改关键字成其他名字 ADD ALL ALTER ANALYZE AND AS ASC ASENSITIVE BEFORE BETWEEN BIGIN ...
- MySQL报错 SQL ERROR:1064 ,SQLState:42000
使用mysql新增数据时报错,具体信息如图所示: 错误原因: 所建的表中 表名或字段名与数据库关键字冲突 解决办法 可以根据报错信息,查看错误的具体位置,找到数据库中对应的字段,查询是否与关键字(不分 ...
- hibernate SQL Error: 8152, SQLState: 22001
这种会出现字符串截断 数据库字段长度设置太小,改大即可.
- 异常:SQL Error: 1064, SQLState: 42000
在MySQL中,有很多字符被MySQL保留了.如果你用来做列名或者表名就会出现问题. 我这里出现的问题是采用了order作为表明,这是一个保留字,所以出现问题.
随机推荐
- [CMD] Jenkins上执行robot命令如果出现fail不往下走其他的CMD命令了
需要在后面加上||exit 0 robot -o %disSection%.xml --include %disSection% -v ENV:%envBmk% .||exit 0
- IDEA的一个设置, 关系到maven的运行, 默认是使用jre的, 有时候不够用需要改成jdk
- 二、SpringBoot基础配置
目录 2.1 @SpringBootApplication 2.3 服务器配置 2.4 修改启动banner 小结 2.1 @SpringBootApplication 从上篇文章中知道@Spring ...
- shell分享
shell脚本分享 一.介绍shell Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序, ...
- 使用lxml解析HTML代码
做个参考,转自:https://blog.csdn.net/qq_42281053/article/details/80658018
- C# vb .net实现发光效果
在.net中,如何简单快捷地实现Photoshop滤镜组中的发光效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第一步 ...
- Java开发环境搭建(一)
一.JDK与JRE JDK:Java Development Kit,Java开发工具包,是给开发人员使用的,其中包含了Java的开发工具,如java.javac.jar等命令,同时也包含了JRE. ...
- Django使用LDAP
https://github.com/python-ldap/python-ldap Quick usage example: import ldap l = ldap.initialize(&quo ...
- Git提交代码解决方案
最近做项目不再用小乌龟了,开始用git,便做了记录如下,后期可以看看自己是怎么使用的 下载安装就不说了,直接进入使用环节. 1.使用规则 git pull origin master 和 gi ...
- 二叉树&满二叉树与完全二叉树
二叉树的定义 二叉树(Binary Tree)是n(n≥0)个元素的有限集合,该集合为空或者为由一个称为"根"的元素及两个不相交的.被分别称为左子树和右子树的二叉树组成 二叉树的基 ...