报错原因
原因一:sql缺少逗号","
如果插入语句,插入的变量之间缺少逗号,会有“无效的主机绑定变量名”错误。
简而言之就是语句缺少逗号",",自查一下。
原因二:sql语句过长
解决方法:减少一次批量插入的数据量,即采用分批入库
private final int SPLIT_SIZE = 1000;//分割数量
Lists.partition(balanceBackupsPOS, SPLIT_SIZE).forEach(balanceBackup -> {
//添加
insert(balanceBackup);
});
注意⚠️
oracle查询的时候使用in 最多可in 1000条数据。
文章讲述了两种常见的SQL错误情况:一是插入语句中变量间缺少逗号导致的‘无效的主机绑定变量名’错误;二是由于SQL语句过长,特别是在Oracle中使用IN子句超过1000条记录限制时引发的问题。为解决这些问题,建议检查语句中的逗号并采用分批插入数据的方法,每次插入不超过1000条记录。
4851

被折叠的 条评论
为什么被折叠?



