SQL для начинающих



       

Хранимые процедуры



Хранимые процедуры

Хранимые процедуры (stored procedures) находятся на сервере баз данных, а не на компьютере пользователя, как это было до появления SQL/PSM. Хранимая процедура должна быть определена, после чего ее можно вызвать с помощью команды CALL. Хранение процедуры на сервере уменьшает сетевой обмен и повышает производительность. Команда CALL является единственным сообщением, передаваемым от пользователя к серверу. Ниже приведен пример создания процедуры.

EXEC SQL

CREATE PROCEDURE MatchScore

        (IN white CHAR (20),

        IN black CHAR (20),

        IN result CHAR (3),

        OUT winner CHAR (5) )

   BEGIN ATOMIC

     CASE result

        WHEN '1-0' THEN

                SET winner='white' ;

        WHEN '0-1 ' THEN

                SET winner='black' ;

        ELSE

                SET winner='draw' ;

  END CASE END ;

После создания хранимой процедуры ее можно вызвать с помощью команды CALL, например:

CALL MatchScore ('Kasparov', 'Karpov', '1-0', winner);

Три первых аргумента являются входными параметрами, которые передаются процедуре MatchScore. Четвертый аргумент является выходным параметром, который процедура Match-Score использует для возврата своих результатов в вызывающую программу. В приведенном примере она возвращает значение 'white'.



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