Шифрование и секретность в Linux


Использование ключевого слова PERFORM



Листинг 11.50. Использование ключевого слова PERFORM

CREATE FUNCTION shipjtem (text.text.text) RETURNS integer AS '

DECLARE

-- Объявление псевдонимов для аргументов функции.

l_name ALIAS FOR $1: f_name ALIAS FOR $2;

bookjsbn ALIAS FOR $3:

-- Объявление переменной для хранения кода книги.

-- Переменная используется для проверки переданного кода ISBN.

book_id Integer:

-- Объявление переменной для хранения кода покупателя.

-- Переменная используется для проверки переданных данных покупателя.

customeMd integer;

BEGIN



-- Получить код покупателя при помощи ранее определенной функции.

SELECT INTO customer_id get_customer_id(l_name.f_name);

-- Если покупатель не найден, функция get_customerjd

-- возвращает -1. В этом случае вернуть -1 и выйти из функции.

IF customerjd = -1 THEN

RETURN -1:

END IF:

-- Получить код книги с заданным кодом ISBN.

SELECT INTO book id book id FROM editions WHERE isbn = book isbn:

-- Если данные книги отсутствуют в базе, вернуть -1.

IF NOT FOUND THEN

RETURN -1;

END IF;

-- Если книга и покупатель существуют.

-- сохранить информацию о поставке в базе.

PERFORM add_shipment(customer_id.bookjsbn);

-- Вернуть 1 - признак успешного выполнения функции.

RETURN 1:

END;

' LANGUAGE 'plpgsql':



Содержание раздела