CALL
CALL — вызвать процедуру
Синтаксис
CALLимя( [аргумент] [, ...] )
Описание
CALL вызывает процедуру.
Если у процедуры есть выходные параметры, возвращается строка результата, содержащая значения этих параметров.
Параметры
- имя
- Имя процедуры (возможно, дополненное схемой). 
- аргумент
- Выражение, определяющее аргумент для вызова процедуры. - В аргументе может передаваться имя параметра в записи - имя=>- значение- Аргументы должны задаваться для всех параметров процедуры, для которых не определены значения по умолчанию, включая параметры - OUT. Однако аргументы, соответствующие параметрам- OUT, не вычисляются, поэтому вместо них обычно часто просто пишут- NULL. (Если передавать в параметрах- OUTкакие-то другие значения, возможны проблемы совместимости с будущими версиями Postgres Pro.)
Примечания
Чтобы вызывать процедуру, пользователь должен иметь право EXECUTE для неё.
Для вызова функции (не процедуры) следует использовать SELECT.
Если CALL выполняется в блоке транзакции, вызываемая процедура не может выполнять операторы управления транзакциями. Такие операторы допускаются, только если CALL выполняется в собственной транзакции.
Выходные параметры команд CALL в PL/pgSQL обрабатываются по-другому; см. Подраздел 41.6.3.
Примеры
CALL do_db_maintenance();
Совместимость
Команда CALL соответствует стандарту SQL, за исключением особенности обработки выходных параметров. Стандарт говорит, что для получения значений таких параметров нужно указывать переменные.