Объявление прототипа процедуры
Назначение
Объявление прототипа хранимой процедуры, которая может быть исполнена с помощью оператора 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. -
В отличие от синтаксиса процедурного блока (см. документ «Процедурный язык»), описание курсора, возвращаемого процедурой, не содержит расшифровку его полей.