как избавиться от ограничения в 10 000 символов запроса SOQL - PullRequest
1 голос
/ 26 июля 2010

В любом случае мы можем обработать ограничение в 10000 символов для SOQL

Ответы [ 2 ]

2 голосов
/ 26 июля 2010

Я уверен, что вы не можете.Согласно этой странице внизу, выдает ошибку.Будучи API, это зависит от них.

http://www.salesforce.com/us/developer/docs/api/Content/sforce_api_calls_soql_select.htm

Операторы SOQL не могут превышать 10 000 символов.Для операторов SOQL, которые превышают эту максимальную длину, API возвращает код исключения MALFORMED_QUERY;строки результата не возвращаются.

0 голосов
/ 25 сентября 2013

Вот что я хотел бы сделать ...

У меня есть 2 очереди в моей функции, сначала просто извлеките идентификаторы из таблицы X, а затем используйте эти идентификаторы в предложении WHERE IN.

Теперь, если первый запрос возвращает более 526 IDS (10,000 / 19 = 526 - длина идентификатора 18 + запятая), и я использую их во втором запросе, он выдаст ошибку.

Что я могу сделать, это проверить# IDS вернул и запустил их пакетами по 500 или около того, размер запроса всегда будет меньше 10 тыс.

Другая проблема в том, что если вы извлекаете более 6000 IDS, вам нужно будет запустить более 100 SOQL.и это достигнет другого предела губернатора.

Но если вы уверены, что возвращение IDS с первого SOQL меньше 6k, тогда оно будет работать для вас.

еще один вариант - использовать внутренний запрос в таких случаях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...