占位符过多引起Caused by: oracle.jdbc.OracleDatabaseException: ORA-01745: 无效的主机/绑定变量名

java 复制代码
BigDecimal amount = testMapper.getSumAmount(CollectionUtil.split(urids, 999))

上面的sql之所以切割成999是因为Oracle in语句中支持的最大集合是999,超过会报ORA-01795。

另一种情况没考虑,也就是urids超过65536个时会报ORA-01745,因为Oracle支持的占位符上限是65536

参考文档 https://www.jianshu.com/p/e1e71192e232

参考文档 https://dzone.com/articles/too-many-preparedstatement-placeholders-in-oracle

相关推荐
VX:Fegn08953 小时前
计算机毕业设计|基于ssm + vue超市管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·后端·课程设计
chipsense3 小时前
电流传感器型号从数据库查询并排序输出到网页的方法
数据库·php·传感器·霍尔电流传感器
踢足球09293 小时前
寒假打卡:2026-01-28
数据库·oracle
麦聪聊数据3 小时前
智慧医疗数据互联互通:使用 QuickAPI 构建实时诊疗数据交换层
数据库·sql·安全
风吹落叶花飘荡4 小时前
2026年mysql数据库迁移(全流程)
数据库·mysql
2301_822382764 小时前
Python上下文管理器(with语句)的原理与实践
jvm·数据库·python
m0_748229994 小时前
Laravel8.X核心功能全解析
开发语言·数据库·php
液态不合群5 小时前
【面试题】MySQL 的索引下推是什么?
数据库·mysql
2301_790300965 小时前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python
Code blocks5 小时前
SpringBoot从0-1集成KingBase数据库
数据库