Объявление прототипа процедуры
Назначение
Объявление прототипа хранимой процедуры, которая может быть исполнена с помощью оператора EXECUTE PROCEDURE.
Синтаксис
<объявление прототипа>::=
EXEC SQL DECLARE PROCEDURE <прототип>;
<прототип>::=
<имя> (<список параметров>) [RESULT <тип результата>]
<имя>::= [<имя схемы>.]<имя процедуры>
<имя схемы>::= <идентификатор встроенного языка>
<имя процедуры>::= <идентификатор встроенного языка>
<список параметров>::= <параметр>[;<Параметр> ..]
<параметр>::= <модификатор> [<имя параметра>] <тип параметра>
<модификатор>::= {IN | OUT | INOUT}
<имя параметра>::= <идентификатор встроенного языка>
<тип параметра>::=
{ INT
| SMALLINT
| REAL
| NUMERIC
| CHAR()
| BYTE()
| DATE
| BLOB }
<тип результата>::= {<тип параметра> | CURSOR}
Описание
-
Если хранимая процедура создается (модифицируется) в модуле встроенного языка с помощью операторов
{ CREATE | ALTER } PROCEDURE, то использование оператораDECLARE PROCEDUREнедопустимо – информация о прототипе берется из текста хранимой процедуры. -
Типы параметров служат для привязки параметров вызова хранимой процедуры к переменным основного языка.
-
Если параметр
RESULTпропущен, считается, что хранимая процедура возвращает NULL. -
В отличие от синтаксиса процедурного блока (см. документ «Процедурный язык»), описание курсора, возвращаемого процедурой, не содержит расшифровку его полей.