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