占位符过多引起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

相关推荐
浠寒AI1 小时前
PostgreSQL 与 SQL 基础:为 Fast API 打下数据基础
数据库·sql·postgresql
金州饿霸1 小时前
MySQL--慢查询日志、日志分析工具mysqldumpslow
数据库·mysql
zhujilisa1 小时前
MySql中的锁
数据库·mysql
百度Geek说2 小时前
BaikalDB 架构演进实录:打造融合向量化与 MPP 的 HTAP 查询引擎
数据库·分布式·架构
Xy9102 小时前
App Trace技术解析:传参安装、一键拉起与快速安装
数据库·程序员
朝九晚五ฺ2 小时前
【MySQL基础】MySQL表操作全面指南:从创建到管理的深度解析
数据库·sql
AIGC_北苏3 小时前
Ubuntu 安装 Mysql 数据库
数据库·mysql·ubuntu
15942315633 小时前
QT使用WxSQLite3打开加密数据库并查询
数据库·qt·sqlite
程序员阿超的博客4 小时前
【数据篇】持久化核心:整合 JPA/MyBatis 实现优雅的数据库操作
数据库·mybatis