数据库查询时报The error occurred while setting paramenters

部署过程发现程序异常

错误信息截图如下
在这里插入图片描述

报错堆栈

org.springframework.jdbc.UncategorizesSQLException:
### Error querying database. Cause: java.sql.SQLSyntaxErrorException: Schema changed
### The error may exist in URL[jar:file:app/****jar!/META_INF/mapper/***.xml] 
### The error may involve com.*.dao.*DAO.getUserByPK-online 
### The error occurred while setting parameters 
### SQL: SELECT a.*,b.prod_type,b.ccy from AM* a,va* b where a.base_acct_no = b.base_acct_no and seq_no = ?

现象回溯

1、先执行了数据库变更脚本(表结构变更)
2、开始部署应用a路,发现应用b路有报错(微服务集群部署,每个应用两路)
3.报错关键信息:
org.springframework.jdbc.UncategorizesSQLException
java.sql.SQLSyntaxErrorException: Schema changed
The error occurred while setting parameters
4、导致业务报错

原因分析

1、AM表做了表结构变更,增加了一个字段。
2、查询信息时没有制定字段使用了select * 查询所有字段
SELECT a.
,b.prod_type,b.ccy from AM* a,va* b where a.base_acct_no = b.base_acct_no and seq_no = ?
3、因为发生了表结构变更导致缓存中的Mapper参数对应不上导致报错

解决方案

**查询时不要使用select * ,需要指定查询字段。
其他可能导致类似错误(错误信息可能有差异):
字段名使用了关键字。
映射字段类型错误。
执行语句语法错误
**

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dr_风语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值