小编use*_*443的帖子

java.sql.SQLSyntaxErrorException:ORA-01795:列表中的最大表达式数为1000

我们都知道,当尝试使用超过1000个值的bomabard查询时,我们会看到此异常.列限制的最大值是1000 ..最好的解决方案是将查询拆分为两个.你可以建议一些可能的代码重构方法,以使我的问题消失.任何帮助将不胜感激.

audTypeFieldIdList大于1000个值时,我们会看到异常.

try {
        String query = "select AUDIT_TYPE_FIELD_ID, FIELD_NAME from AUDIT_TYPE_FIELD where AUDIT_TYPE_FIELD_ID in (";
        int x = 0;
        for (int y = 1; y <= audTypeFieldIdList.size(); y++) {
            query += audTypeFieldIdList.get(x);
            if (y != audTypeFieldIdList.size()) {
                query += ", ";
            }
            x++;
        }
        query += ")";    



List<Long> audTypeFieldIdList, Connection connection) {          

    ResultSet rs = null;
    Statement stmt = null;
    List<AuditTypeField> audTypeFieldList = new ArrayList<AuditTypeField>();
    try {
        String query = "select AUDIT_TYPE_FIELD_ID, FIELD_NAME from AUDIT_TYPE_FIELD where …
Run Code Online (Sandbox Code Playgroud)

java arrays java-ee oracle-sqldeveloper angularjs

2
推荐指数
1
解决办法
4953
查看次数

标签 统计

angularjs ×1

arrays ×1

java ×1

java-ee ×1

oracle-sqldeveloper ×1