#salesforce #apex #soql
#система Salesforce #apex #soql
Вопрос:
Я пытаюсь запустить select в системе Salesforce следующим образом:
SELECT [Account].* FROM [Account] WHERE [Account].Id IN ('123456789012345678')
но выдает ошибку: «Неизвестная ошибка синтаксического анализа запроса»
Как я могу сделать этот выбор?
Ответ №1:
SOQL — это не SQL. Синтаксис SQL, который вы используете здесь, недопустим в системе Salesforce. Вы можете изучить основы SOQL в разделе «Писать запросы SOQL» на Trailhead или в справочнике SOQL и SOSL.
До выпуска Salesforce Spring ’21 SELECT *
подстановочный знак не поддерживается. Вы должны указать все поля явно. Как только ваша организация будет обновлена до Spring ’21 (на момент написания этой статьи выпуск продолжается), вы сможете использовать FIELDS(ALL)
. На этом этапе ваш запрос будет выглядеть следующим образом:
SELECT FIELDS(ALL) FROM Account WHERE Id IN ('123456789012345678')
Обратите внимание, что для подключения к Salesforce необходимо использовать API версии 51.0, чтобы использовать эту функцию. Вы можете вернуть до 200 записей.
Комментарии:
1. спасибо за обновление. При дальнейшем чтении это выглядит так, как 12 февраля: все организации теперь будут на Spring ’21!