EXECUTE

Выполняет подготовленный SQL-оператор.

Обзор

EXECUTE <name> [ (<parameter> [, ...] ) ]

Описание

EXECUTE используется для выполнения ранее подготовленного оператора. Поскольку подготовленные операторы существуют только в течение сеанса, они должны быть созданы с помощью оператора PREPARE, выполненного ранее в текущем сеансе.

Если оператор PREPARE, создавший данный оператор, определял параметры, то при вызове EXECUTE необходимо передать совместимый набор параметров, в противном случае Database выдаст ошибку. Так как (в отличие от функций) подготовленные операторы не перегружаются по типу или количеству параметров, имя подготовленного оператора должно быть уникальным в пределах одного сеанса базы данных.

Дополнительную информацию о создании и использовании подготовленных операторов см. в разделе PREPARE.

Параметры

  • name
    • Имя подготовленного оператора, который необходимо выполнить.
  • parameter
    • Фактическое значение параметра подготовленного оператора. Должно быть выражением, возвращающим значение, совместимое с типом данных этого параметра, установленного при создании подготовленного оператора.
  • Outputs
    • Метка команды, возвращаемая EXECUTE, соответствует метке подготовленного оператора, а не самой команде EXECUTE.

Примеры

Создание подготовленного оператора для оператора INSERT и его последующее выполнение:

PREPARE fooplan (int, text, bool, numeric) AS
    INSERT INTO foo VALUES($1, $2, $3, $4);
EXECUTE fooplan(1, 'Hunter Valley', 't', 200.00);

Совместимость

Стандарт SQL включает оператор EXECUTE, но он предназначен исключительно для использования во встроенном SQL. Версия оператора EXECUTE, описываемая здесь, использует несколько отличающийся синтаксис.

См. также

DEALLOCATE, PREPARE