SQLException:ORA-01795:maximumnumberofexpressionsinalistis1000
错误原因:在SQL语句时,WHERE中的某一个条件采用IN的方式,但是由于数据过多则产生错误,oracle中in列表不能超过1000。
解决办法:
1.采用多个in ,原来in (1-2000) 写成 in(1-1000) or in(1001-2000)
外部再生成一个Set 按100条一次,if(set.isempty==fasle) 再执行剩下的
2.采用join 链接。(update 没有测试过)
3.降低In中列表元素的数量
4.直接采用循环,效率比较低