Procedúra je jednotka / modul, ktorá vykonáva konkrétnu úlohu. Tento postup je možné kombinovať a vytvoriť tak väčšie programy. Toto v podstate tvorí „modulárny dizajn“. Procedúru je možné vyvolať inou procedúrou, ktorá sa nazýva volajúci program.
Procedúry sú opakovane použiteľným blokom spracovania so špecifickou sekvenciou transformácie údajov. Procedúra môže mať parametre viacerých vstupov / výstupov. Procedúru je možné vytvoriť ako iba na čítanie alebo na čítanie a zápis.
Procedúru SQL je možné vytvoriť na -
- Na úrovni schémy (uzol katalógu)
- Na úrovni balíka (uzol obsahu)
Syntax uloženej procedúry v systéme SAP HANA je uvedená nižšie -
SYNTAX
CREATE PROCEDURE[( )] [LANGUAGE ][SQL SECURITY ] [DEFAULT SCHEMA ][READS SQL DATA [WITH RESULT VIEW ]] AS{BEGIN [SEQUENTIAL EXECUTION] END| HEADER ONLY }
Príkaz CREATE PROCEDURE vytvorí procedúru pomocou spomenutého programovacieho jazyka
SYNTAXOVÉ PRVKY
PRVKY | POPIS |
---|---|
| Názov postupu |
| Tu je definovaný parameter. Existuje parameter IN, OUT, INOUT. Každý parameter je označený pomocou kľúčových slov IN / OUT / INOUT • IN - používa sa na postup Pass Value To ako INPUT. Je to parameter iba na čítanie. • OUT - Používa sa na návratovú hodnotu z postupu ako OUTPUT. • INOUT - Používa sa na zadanie a vrátenie hodnoty do procedúry rovnakým parametrom. |
JAZYK | Definuje programovací jazyk použitý v postupe. Predvolená hodnota: SQLSCRIPT |
ZABEZPEČENIE SQL | Určuje bezpečnostný režim postupu. Predvolená hodnota: DEFINÉR • DEFINÉR - Určuje, že vykonávanie procedúry sa vykonáva s oprávneniami definovateľa procedúry. • INVOKER - Určuje, že vykonávanie procedúry sa vykonáva s oprávneniami vyvolávateľa procedúry. |
| Definuje schému pre nekvalifikované objekty v tele procedúry. Ak nie je definované nič, potom sa pre postup použije aktuálna schéma relácie. |
ČÍTA DATA SQL | Označuje procedúru iba na čítanie, znamená to, že procedúra nemení databázové údaje ani jej štruktúru a že procedúra neobsahuje príkazy DDL alebo DML. Tento postup volá iba iné postupy iba na čítanie. |
S VÝHĽADOM NA VÝSLEDKY | Definuje výsledný pohľad, ktorý sa použije ako výstup procedúry iba na čítanie. Ak je pre procedúru zadané zobrazenie výsledku, potom ho možno vyvolať príkazom SQL v rovnakom procese ako tabuľka alebo zobrazenie. |
POSTUPNÉ VYKONÁVANIE | Toto vyhlásenie vynúti postupné vykonávanie logiky procedúry. Nijaký paralelizmus sa nekoná. |
Definuje hlavnú časť postupu na základe zvoleného programovacieho jazyka. | |
IBA HLAVA | Ak sa použije iba hlavička, potom sa pomocou OID vytvoria iba vlastnosti procedúry. |