ORA-01795问题的一个解决方法
来源:互联网 发布:byte数组合并 编辑:程序博客网 时间:2024/05/21 20:26
今天软件出了一个Bug,报出ORA-01795: maximum number of expressions in a list is 1000 错误,
才知道Oracle的In-list有1000个元素的限制。若把条件分成多个少于1000的IN:SELECT * FROM DUAL T WHERE T.DUMMY IN ('1', '2', '3',...,'1000') OR IN ('1001', '1002', ..., '2000') OR ... 即可解决这个异常:
才知道Oracle的In-list有1000个元素的限制。若把条件分成多个少于1000的IN:SELECT * FROM DUAL T WHERE T.DUMMY IN ('1', '2', '3',...,'1000') OR IN ('1001', '1002', ..., '2000') OR ... 即可解决这个异常:
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < columnContents.size(); i++) {
- if (PluginConst.EMPTY_STRING.equals(columnContents.get(i))) {
- continue;
- }
- if ((i % 1000) == 0 && i > 0) {
- sb.deleteCharAt(sb.length() - 1);
- sb.append(") OR " + columnName + " IN ( '"
- + columnContents.get(i) + "',"); // resolved
- // resolved ORA-01795 problem.
- } else {
- sb.append("'" + columnContents.get(i) + "',");
- }
- }
- // delete the last comma
- sb.deleteCharAt(sb.length() - 1);
- String selectSQL = "SELECT * FROM " + tableName + " WHERE "
- + columnName + " IN ( " + sb.toString() + " )";
- ORA-01795问题的一个解决方法
- ORA-01078问题的解决方法
- ORACLE-ORA-01795的解决方法
- oracle出现ORA-16038,ORA-19809,ORA-00312问题的解决方法
- ora-01033 一个小问题的解决
- 一个listener.ora配置细节的问题
- tabLayout 一个问题的解决方法
- ERROR ORA-01795 的简单解决方法。
- ORA-01033的解决方法
- ORA-00054 的解决方法
- ORA-00054 的解决方法
- ORA-00604的解决方法
- ORA-12514的解决方法
- ORA-01031的解决方法
- ORA-01591 锁定已被有问题的分配事务处理--解决方法
- "ora-00988 缺少或无效口令"问题的解决方法
- ORA-01591 锁定已被有问题的分配事务处理--解决方法
- ORA-01591 锁定已被有问题的分配事务处理--解决方法
- 正则表达式之-《精通正则表达式 第3版》错误列表
- java 日记 2008/10/20(spring,struts 整合二)
- 在“Generating Artifacts”期间发生了内部错误
- 使用Applet上传多个文件
- 嵌入式Linux征稿
- ORA-01795问题的一个解决方法
- Video4Linux编程心得
- JavaScript:按钮事件动态绑定
- 如何实现快捷键
- char、varchar、text和nchar、nvarchar、ntext的区别
- java方面的一点基础知识
- mime类型大全 input file accept
- :外购件的移动均价,自制件的标准价
- 四川桔子出现寄生虫,而且大面积发现