SAP HANA SQL tárolt eljárás oktatóanyaga
Mik azok az SQL tárolt eljárások?
Az eljárás egy adott feladatot végrehajtó egység/modul. Ez az eljárás kombinálható nagyobb programok kialakítására. Alapvetően ez alkotja a „Moduláris Tervezést”. Egy eljárás meghívható egy másik eljárással, amelyet hívó programnak neveznek.
Az eljárások újrafelhasználható feldolgozási blokkok egy meghatározott adatátalakítási sorozattal. Az eljárás több bemeneti/kimeneti paraméterekkel rendelkezhet. Az eljárás létrehozható írásvédett vagy írásvédettként.
An SQL Az eljárást a következő címen lehet létrehozni -
- Séma szinten (katalógus csomópont)
- Csomag szinten (tartalmi csomópont)
Tárolt eljárás szintaxisa SAP HANNA az alábbiak szerint van -
SZINTAXIS
CREATE PROCEDURE <proc_name> [(<parameter_clause>)] [LANGUAGE <lang>] [SQL SECURITY <mode>] [DEFAULT SCHEMA <default_schema_name>] [READS SQL DATA [WITH RESULT VIEW <view_name>]] AS {BEGIN [SEQUENTIAL EXECUTION] <procedure_body> END | HEADER ONLY }
A CREATE PROCEDURE utasítás egy eljárást hoz létre a említés programozási nyelv használatával .
SZINTAXIKA ELEMEI
ELEMEK | LEÍRÁS |
---|---|
Eljárás neve | |
Itt van megadva a paraméter. IN, OUT, INOUT paraméter van. Minden paraméter az IN/OUT/INOUT kulcsszavakkal van megjelölve
• IN – A Pass Value To eljáráshoz használatos INPUT-ként. Ez csak olvasható paraméter. • OUT – Az eljárásból visszatérési értékhez használatos OUTPUT-ként. • INOUT – A Pass és Return Value to Procedure-hoz használatos ugyanazon paraméterrel. |
|
NYELV | Meghatározza az eljárás során használt programozási nyelvet. Alapértelmezés: SQLSCRIPT |
SQL BIZTONSÁG | Meghatározza az eljárás biztonsági módját. Alapértelmezés: DEFINER
• DEFINER – Megadja, hogy az eljárás végrehajtása az eljárás definiálójának jogosultságaival történjen. • INVOKER – Megadja, hogy az eljárás végrehajtása az eljárás meghívójának jogosultságaival történjen. |
Meghatározza a sémát a minősítetlen objektumokhoz az eljárástörzsben. Ha nincs megadva semmi, akkor a munkamenet aktuális sémája kerül felhasználásra az eljáráshoz. | |
SQL ADATOK OLVASÁSA | Az eljárást írásvédettnek jelöli, ez azt jelenti, hogy az eljárás nem módosítja az adatbázis adatait vagy annak szerkezetét, és nem tartalmaz DDL vagy DML utasításokat. Ez az eljárás csak más írásvédett eljárásokat hív meg. |
EREDMÉNYNÉZÉSSEL | Meghatározza a csak olvasható eljárás kimeneteként használandó eredménynézetet. Ha egy eljáráshoz eredménynézetet adtunk meg, akkor azt egy an SQL utasítás ugyanabban a folyamatban, mint egy táblázat vagy nézet. |
SZEKVENCIÁLIS VÉGREHAJTÁS | Ez az utasítás kikényszeríti az eljárási logika szekvenciális végrehajtását. Nem történik párhuzamosság. |
Ez határozza meg az eljárás fő részét a kiválasztott programozási nyelv alapján. | |
CSAK FEJLŐ | Ha csak a fejlécet használja, akkor csak az eljárás tulajdonságai jönnek létre az OID segítségével. |