ВУЗ:
Составители:
Рубрика:
CREATE PROCEDURE <имя процедуры>
[(<входной параметр> <тип данных>
[, <входной параметр> <тип данных>…])]
[RETURNS
(<выходной параметр> <тип данных>
[, <выходной параметр> <тип данных>…])]
AS <тело процедуры>;
Входные и выходные параметры могут быть пропущены, если в них нет необходимости.
Тело процедуры имеет следующий формат:
[<объявление локальных переменных>]
BEGIN
<оператор>
[<оператор>]
END
Формат объявления локальных переменных:
DECLARE VARIABLE <имя переменной> <тип данных>
Пример:
CREATE PROCEDURE full_post (det VARCHAR (20))
RETURNS (adr_post VARCHAR (40)) AS
DECLARE VARIABLE naiden_post VARCHAR (20);
DECLARE VARIABLE max_kolvo;
BEGIN
…
END
Тело процедуры ограничивается операторными скобками BEGIN…END. Значения переменным
присваивается оператором "=" (out_detal = full_post (name_det);). Оператор IF… THEN… ELSE име-
ет такой же формат, что и в среде программирования Object Pascal:
IF (<условие>) THEN <оператор 1> [ELSE <оператор 2>];
Оператор SELECT используется в хранимой процедуре для выдачи единичной строки. Синтаксис
отличается добавлением предложения:
INTO :<переменная> [, <переменная>…]
Значение, возвращаемое SELECT, записывается в переменные.
Например:
SELECT AVG (kolvo), SUM (kolvo)
FROM prihod
WHERE name_det = :in_name
INTO :avg_kolvo, :sum_kolvo;
где in_name – входная переменная, содержащая значение.
Оператор FOR SELECT… DO <оператор> работает по алгоритму: выполняется оператор SELECT
и для каждой строки полученного результата выполняется оператор, следующий за словом DO.
Оператор WHILE IN DO имеет формат:
WHILE (<условие>) DO <оператор>
Страницы
- « первая
- ‹ предыдущая
- …
- 51
- 52
- 53
- 54
- 55
- …
- следующая ›
- последняя »